刚开始接触机房收费的时候,连上数据库,配置ODBC,登陆进去,那窗体叫一个多,不由地有种害怕的感觉,但是有人说,每天努力一点点,就会进步一点点,不会的就会少一点点,会的就会多一点点........
在看似杂乱无章的各个窗体都相互独立,其实,他们之间有着千丝万缕的关系,剪不断,理还乱。在机房收费系统中,有多处用到导出Excel表格,就这个问题做一个简单的总结。
第一种方法
打开VB-工程-应用-勾选Microsoft Excel 14.0 Objexts 2.6 Library
编写代码如下:
Private Sub CmdExport_Click() Dim j As Integer Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Set xlApp = CreateObject("Excel.Application") '实例化对象xlApp xlApp.Visible = True Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1) For i = 0 To myflexgrid.Rows - 1 For j = 0 To myflexgrid.Cols - 1 myflexgrid.Row = i myflexgrid.Col = j xlSheet.Cells(i + 1, j + 1) = Trim(myflexgrid.Text) Next Next End Sub
第二种方法
在根目录中提前建立好空的Excel表格,这个表格所存放的目录应当和你的VB工程同属于一个目录,然后就是核心部分了,编写代码:
Private Sub cmdExport_Click() Dim i As Integer Dim j As Integer myFlexGrid.Redraw = False Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象 Set xlBook = xlApp.Workbooks.Open(App.Path & "\学生上机记录.xls") '打开已经存在的EXCEL工件簿文件 xlApp.Visible = True '设置EXCEL对象可见 Set xlSheet = xlBook.Worksheets("Sheet1") '设置活动工作表 For i = 0 To myFlexGrid.Rows - 1 '行循环 For j = 0 To myFlexGrid.Cols - 1 '列循环 myFlexGrid.Row = i myFlexGrid.Col = j '保存到EXCEL Next i myFlexGrid.Redraw = True End Sub
上述两种方法都可以实现导出Excel表格的功能,我们通常都选择第一种方法,第一种方法更加方便灵活,第二种方法,对于导出Excel表格较少的情况下还使用,如果需要导出的表格有几千张,几万张, 操作就不太方便了。