机房收费系统---将mshflexgrid控件的记录导出到excel

     如何将mshflexgrid控件的记录导出到excel呢?这个问题看似不简单,其实挺简单的。一看到excel,就会想起陈伟老师的vb视频,其中的vb与office 41-43集中讲到了这点---使用office对象进行数据交换。使用office对象的方法如图所示:

         机房收费系统---将mshflexgrid控件的记录导出到excel_第1张图片

所以具体的解决方法:

     第一步是先引用excel对象,因为我用的是office2010,所以引用对象为micro excel 14.0 object library .

     第二步是创建Application对象,如:Dim xlsApp As Excel.Application     Set xlsApp = CreateObject("Excel.Application")

     第三步是使用Application及其子对象,这一步是最重要的,我们要输出数据的具体操作就在这里操作。比如:要将mshflexgrid中的记录对应的导出到excel中。

     第四步则是关闭Application 对象。如:Set xlsApp = Nothing   ,这一步是将excel对象从内存中卸载。

 下面显示我的代码:

     Dim i As Integer, j As Integer

     Dim xlsApp As Excel.Application

     Dim xlsBook As Excel.Workbook        

     Dim xlsSheet As Excel.Worksheet

 

     Set xlsApp = CreateObject("Excel.Application")

     Set xlsBook = xlsApp.Workbooks.Add

     Set xlsSheet = xlsBook.Worksheets(1)      

 

     For i = 0 To MSHFlexGrid1.Rows - 1

                 For j = 0 To MSHFlexGrid1.Cols - 1

                          xlsSheet.Cells(i + 1, j + 1) = MSHFlexGrid1.TextMatrix(i, j)

                 Next j

     Next i

     xlsApp.Visible = True

     Set xlsApp = Nothing

 代码中标记处的地方需要注意一点:vb中的所有集合对象是以1为基底的,而mshflexgrid控件是以0为基底的。

你可能感兴趣的:(机房收费系统---将mshflexgrid控件的记录导出到excel)