加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

VB导出EXCEL

发布时间:2020-12-17 00:21:28 所属栏目:大数据 来源:网络整理
导读:经常听别人说导出EXCEL等,现在轮到自己做了,开始做的时候还是没有点思路,等做完了,虽然是小小的一个小功能,还是很高兴的。分享一下吧。 机房收费系统中,好几个窗体都用到了导出为EXCEL,为了方便在模块中定义了一个函数,那个窗体需要就去调用,避免代

经常听别人说导出EXCEL等,现在轮到自己做了,开始做的时候还是没有点思路,等做完了,虽然是小小的一个小功能,还是很高兴的。分享一下吧。

机房收费系统中,好几个窗体都用到了导出为EXCEL,为了方便在模块中定义了一个函数,那个窗体需要就去调用,避免代码多而杂。

'自定义函数
'*************************************************************************
'**函 数 名: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

在窗体中调用:

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

出现的结果为:



只要努力,坚持,一切困难都是可以克服的。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读