【机房收费系统】从MSHflexgrid控件导入到Excel

              今天来整理一下如题的解决方法:

         首先,在模块里面声明如下过程:

         

Public Sub Export(frmName As Form, FlexGridName As String)

    Dim xlApp As Object                 'Excel.Application
    Dim xlBook As Object                'Excel.Workbook
    Dim xlSheet As Object               'Excel.Worksheet

    Screen.MousePointer = vbHourglass

    On Error GoTo Err_Proc

    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Add
    Set xlSheet = xlBook.Worksheets(1)

    '向表中添加数据
    Dim intRowIndex As Integer
    Dim intColIndex As Integer

    With frmName.Controls(FlexGridName)  '查找控件
        '填充数据到Sheet1
        For intRowIndex = 0 To .Rows - 1
            For intColIndex = 0 To .Cols - 1
                xlSheet.Cells(intRowIndex + 1, intColIndex + 1).Value = "'" & .TextMatrix(intRowIndex, intColIndex)
            Next intColIndex
        Next intRowIndex
    End With

    xlApp.Visible = True
    Screen.MousePointer = vbDefault
    Exit Sub

Err_Proc:
    Screen.MousePointer = vbDefault
    MsgBox "请确认您的电脑已安装Excel!", vbExclamation, "提示"
End Sub

          这样,基本的步骤就做完了,然后就在需要的窗体下的command的click 下执行相应的命令了:

          

Export Me, "myflexgrid"   '引号里面的是自己的flexgrid的名称
         这样,就可以导入到excel里面了。


       其实还有个这样的问题,导出到Excel里面的数据有和单元格的大小不一致,导致看不见某些数据,虽然这个可以在代码中实现,但是Excel的设置也能解决问题,动动手的事。

        在“开始”的“格式”里面,设置自动调整行高和列高就可以了。


    

你可能感兴趣的:(数据库,Excel,控件)