在做机房收费系统的时候,许多窗体用到的一个功能,就是将从数据库中提取出来的数据导出到Excel中。
首先,引用Microsoft Excel 14.0 Object Library
然后,写代码
Public Sub OutDataToExcel(Flex As MSHFlexGrid) '导出至Excel
Dim i As Integer
Dim j As Integer
Dim Line As Integer
Dim outExcel As Excel.Application
Set outExcel = New Excel.Application '实例化Excelapp
'返回或设置插入microsoft excel 新工作薄中工作表的数目
outExcel.SheetsInNewWorkbook = 1
'添加新的工作薄
outExcel.Workbooks.Add
'excel刚打开时,设定游标的位置
outExcel.Range("K1").Select
'字形
outExcel.Selection.Font.FontStyle = "Bold"
outExcel.Selection.Font.Size = 14 '字体大小
With Flex
Line = .Rows
For i = 0 To Line - 1 '行循环
For j = 0 To .Cols - 1 '列循环
'将数据导入到Excel中
outExcel.ActiveSheet.Cells(1 + i, j + 1) = "'" & .TextMatrix(i, j)
Next j
Next i
End With
outExcel.Visible = True '是否显示导出过程(true是)
End Sub
Private Sub cmdExport_Click()
OutDataToExcel myFlexGrid '将myflexgrid中的数据导出至Excel
End Sub
显示数据库中的数据,可以用MSHflexgrid控件,也可以用DataGrid控件,后者需要引用Microsoft ActiveX Date Objects2.0 Library,并且添加Microsoft Dategrid Control6.0部件。