Private Sub WriteDataGridtoExcel()
Dim FileName As String
Dim FileExtName As String = ".xls"
Dim strMonth As String, strDay As String, j As Integer
strMonth = CStr(Month(Now()))
strDay = CStr(Day(Now()))
For j = 1 To 2 - Len(strMonth)
strMonth = "0" & strMonth
Next
For j = 1 To 2 - Len(strDay)
strDay = "0" & strDay
Next
FileName = "Ensure"
FileName = FileName & Year(Now()) & strMonth & strDay & FileExtName
'Response.Write(FileName)
'Response.End()
Dim xlsheet As New SpreadsheetClass
cnn.Open()
Dim reader As SqlDataReader = Me.sql.ExecuteReader()
Dim numbercols As Integer = reader.FieldCount
Dim row As Integer = 2
Dim i As Integer = 0
' 輸出標題
For i = 0 To numbercols - 1
xlsheet.ActiveSheet.Cells(1, i + 1) = reader.GetName(i).ToString()
Next
' 輸出欄位內容
While (reader.Read())
For i = 0 To numbercols - 1
xlsheet.ActiveSheet.Cells(row, i + 1) = reader.GetValue(i).ToString()
Next
row = row + 1
End While
reader.Close()
cnn.Close()
Try
'xlsheet.ActiveSheet.Export(Server.MapPath(".") + "/Images/" + Me.xlfile.Text, OWC.SheetExportActionEnum.ssExportActionNone)
xlsheet.ActiveSheet.Export(Server.MapPath(".") + "/Images/" + FileName, OWC.SheetExportActionEnum.ssExportActionNone)
Catch e As System.Runtime.InteropServices.COMException
Response.Write("錯誤:" + e.Message)
End Try
End Sub