VB导出EXCEL
2012-09-17 20:47:53 来源:WEB开发网核心提示: 经常听别人说导出EXCEL等,现在轮到自己做了,VB导出EXCEL,开始做的时候还是没有点思路,等做完了,<span style="font-size:18px;">'自定义函数'*'**函 数 名:toexcel'**输 入:Gri
经常听别人说导出EXCEL等,现在轮到自己做了,开始做的时候还是没有点思路,等做完了,虽然是小小的一个小功能,还是很高兴的。分享一下吧。
机房收费系统中,好几个窗体都用到了导出为EXCEL,为了方便在模块中定义了一个函数,那个窗体需要就去调用,避免代码多而杂。
<span style="font-size:18px;">'自定义函数 '************************************************************************* '**函 数 名:toexcel '**输 入:Grid1(MSHFlexGrid) - '**输 出:无 '**功能描述:数据导出到Excel表 '**作 者:刘腾腾 '**日 期:2012-09-17 19:54:27 '**修 改 人: '**日 期: '**版 本:V1.0.0 '************************************************************************* Public Sub toexcel(Grid1 As MSHFlexGrid) On Error GoTo aa: '错误处理 Dim i, j As Integer Dim ex As Object Dim exwbook As Object Dim exsheet As Object Set ex = CreateObject("Excel.Application") '创建excel对象 Set exwbook = ex.Workbooks.Add '打开文件 ex.Visible = True '对象可见 Set exsheet = exwbook.Worksheets("sheet1") '设定工作表 For i = 1 To Grid1.Rows '在表中显示所有的数据 For j = 1 To Grid1.Cols exsheet.Cells(i, j) = Grid1.TextMatrix(i - 1, j - 1) Next j Next i aa: Exit Sub End Sub </span>
在窗体中调用:
<span style="font-size:18px;">Private Sub cmdOutput_Click() '输出 '如果行数小于2,就没有数据,如果大于2,就调用函数输出导出excel表 If Rechargeflexgrid.Rows < 2 Then MsgBox "没有数据!", vbOKOnly + vbExclamation, "警告" Exit Sub Else Call toexcel(Rechargeflexgrid) '调用模块中定义的函数 End If End Sub</span>
出现的结果为:
更多精彩
赞助商链接