机房收费系统————导出到Excel

机房收费系统————导出到Excel机房收费系统————导出到Excel

大家好,又见面了,我是你们的朋友全栈君。

机房收费系统中有很多之前在敲学生的时候没有接触到的功能,遇到的第一个陌生的就是把数据导出到Excel中,那么这个功能是怎么实现的呢?


首先,在VB中“工程”——>”引用”中添加引用

机房收费系统————导出到Excel

如果没有这个选项,单击右边的浏览,找到路径:c:\ Program Files \ Microsoft Office \ Office 15 下的  EXCEL.exe 添加就可以了。(这个方法可能会因为电脑的不同有所差异,不一样的话自己研究一下就好了,总之就是要添加引用)

机房收费系统————导出到Excel

接下来就是通过代码实现功能,大体上有两种实现方法

法一:数据从VB控件 MSHFlexGrid 中导出

Private Sub cmdExport_Click()
    Dim i As Integer
    Dim j As Integer
    
    On Error Resume Next
    If myflexgrid.TextMatrix(1, 0) = "" Then
        MsgBox "没有数据导出", vbInformation, "提示"
        Exit Sub
    End If
    
    Dim excelApp As Excel.Application
    Set excelApp = New Excel.Application
    Set excelApp = CreateObject("excel.application")
    Dim exbook As Excel.Workbook
    Dim exsheet As Excel.Worksheet
    Set exbook = excelApp.Workbooks.Add
    
    excelApp.SheetsInNewWorkbook = 1
    excelApp.Visible = True
    Me.MousePointer = vbHourglass
    
    With excelApp.ActiveSheet
        For i = 1 To myflexgrid.Rows
            For j = 1 To myflexgrid.Cols
                .Cells(i, j).Value = "" & Format$(myflexgrid.TextMatrix(i - 1, j - 1))
            Next j
        Next i
    End With
    
    Me.MousePointer = 0
    Set exsheet = Nothing
    Set exbook = Nothing
    Set excelApp = Nothing
    
End Sub

法二:数据从SQL Server数据库的记录中导出

Private Sub cmdExport_Click()
    Dim i As Integer
    Dim txtSQL As String
    Dim MsgText As String
    Dim mrc As ADODB.Recordset
    Dim x1app1 As Excel.Application
    Dim x1book1 As Excel.Workbook
    Dim x1sheet1 As Excel.Worksheet
    
    Set x1app1 = CreateObject("excel.application")
    Set x1book1 = x1app1.Workbooks.Add
    Set x1sheet1 = x1book1.Worksheets(1)
    
    txtSQL = "select cardNo,Date,time,CancelCash,UserID,status from CancelCard_Info where date between '" & Trim(DTPicker1.Value) & "' and '" & Trim(DTPicker2.Value) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    
    For i = 0 To mrc.Fields.Count - 1
        x1sheet1.Cells(1, i + 1) = mrc.Fields(i).Name
    Next i
    
    If Not mrc.EOF Then
        mrc.MoveFirst
        x1sheet1.Range("A2").CopyFromRecordset mrc
        mrc.Close
    End If
    Set mrc = Nothing
    x1app1.Visible = True
    Set x1app1 = Nothing
End Sub


(第一次在csdn上写,还有点小激动呢)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/105792.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • findIndex()方法[通俗易懂]

    findIndex()方法[通俗易懂]findIndex()方法返回数组中通过测试的第一个元素的索引(作为函数提供)。findIndex()方法对数组中存在的每个元素执行一次函数:如果找到函数返回true值的数组元素,则findIndex()返回该数组元素的索引(并且不检查剩余值)否则返回-1注释:findIndex()不会为没有值的数组元素执行函数。注释:findIndex()不会改变原始数组。获取数组中第一个值等于或大于18的元素的索引:varages=[3,10,18,20];funct

    2025年7月22日
    3
  • cnpm安装方法「建议收藏」

    cnpm安装方法「建议收藏」cnpm安装方法cnpm安装方法:npminstall-gcnpm–registry=https://registry.npm.taobao.org

    2022年10月11日
    1
  • 区块链从概念到落地,多样化应用激活大数据经济

    区块链从概念到落地,多样化应用激活大数据经济

    2022年3月7日
    33
  • linux下邮件发送服务器日志「建议收藏」

    linux下邮件发送服务器日志「建议收藏」sendsyslog.py //发送邮件调用程序#!/usr/bin/envpython#-*-coding:UTF-8-*-importosimportsyssys.path.append(os.getcwd())importsendlog############sendlog.py//发送邮件配置程序#

    2022年9月25日
    2
  • android app反编译_安卓反编译教程

    android app反编译_安卓反编译教程在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看。下面是我参考了一些文章后简单的教程详解。(注:反编译不是让各位开发者去对一个应用激活成功教程搞重装什么的,主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平。)测试环

    2025年7月3日
    3
  • USACO Section 2.1 Sorting a Three-Valued Sequence

    USACO Section 2.1 Sorting a Three-Valued Sequence

    2021年12月2日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号