机房收费系统---将mshflexgrid控件的记录导出到excel
???? 如何将mshflexgrid控件的记录导出到excel呢?这个问题看似不简单,其实挺简单的。一看到excel,就会想起陈伟老师的vb视频,其中的vb与office 41-43集中讲到了这点---使用office对象进行数据交换。使用office对象的方法如图所示: ???????? 所以具体的解决方法: ???? 第一步是先引用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为基底的。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |