WEB开发网
开发学院软件开发VB VB导出EXCEL 阅读

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>

 出现的结果为:

Tags:VB 导出 EXCEL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接