1. 程式人生 > >機房收費系統之學生檢視上機記錄(MSHFlexGrid控制元件資料匯出Excel)

機房收費系統之學生檢視上機記錄(MSHFlexGrid控制元件資料匯出Excel)

       這個窗體之所以可以順利的進行下去,全靠藉助於巨人的力量,站在了巨人的肩膀上前行,Excel的匯出還是很神奇的,讓我們一起來看一下吧^_^

一、學生檢視上下機記錄窗體的流程圖

二、查詢集

①、機房收費系統中Excel表如何匯出

②、vb中DoEvents是什麼意思

三、程式碼片段

MSHFlexGrid控制元件資料匯出至Excel


Private Sub cmdexportexcel_Click()
    Dim ExcelApp As Excel.Application   '定義Excel表格應用程式
    Dim ExcelBook As Excel.Workbook     '定義Excel表格工作簿
    Dim ExcelSheet As Excel.Worksheet   '定義Excel表格工作表

    Dim i As Integer    '定義excel表中的行變數
    Dim j As Integer    '定義excel表中的列變數
    
    Set ExcelApp = CreateObject("Excel.application")    '建立一個excel應用程式物件
    Set ExcelBook = ExcelApp.Workbooks.Add              '建立一個工作簿
    Set ExcelSheet = ExcelBook.Worksheets(1)            '建立一個工作表
    
    DoEvents
    '因以下程式碼執行時間較長,所以轉讓控制權,讓作業系統處理其他事件,避免操作不響應誤認為宕機
    
    If myflexgrid.Rows <= 1 Then
        MsgBox "沒有可匯出資料!", vbOKOnly, "溫馨提示:"
    End If
    
    With myflexgrid
        For i = 0 To .Rows - 1                      '迴圈新增行內容
            For j = 0 To .Cols - 1                  '迴圈新增列內容
            DoEvents
            ExcelApp.ActiveSheet.Cells(i + 1, j + 1) = .TextMatrix(i, j)  '新增單元格內容
            Next j
        Next i
    End With
    
    ExcelApp.ActiveWorkbook.SaveAs App.Path & "\學生查詢.xls"    '設定Excel儲存路徑
    ExcelApp.ActiveWorkbook.Saved = True          '儲存excel表格
    MsgBox "匯出成功!", vbOKOnly, "溫馨提示:"
    ExcelApp.Visible = True                       '顯示excel表格
    
    
    Set ExcelApp = Nothing                 '釋放ExcelApp物件
    Set ExcelBook = Nothing
    Set ExcelSheet = Nothing
End Sub

        以上便是此窗體的簡單梳理,下一站走起^_^