Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-窗体/数据页

[分享]数据导出到Excel

时 间:2008-01-13 09:49:43
作 者:cuxun   ID:274  城市:肇庆
摘 要:[分享]数据导出到Excel
正 文:

Public Function AccessToExcel(ByVal TempSql As String, Optional TempName As String)
'数据导出到Excel
'tempsql:支持sql语句\查询\表
'tempName:导出Excel的工作表的名称
'注意必须引用excel对象

    On Error GoTo Err:

    Dim row As Integer
    Dim col As Integer
    Dim Conn As ADODB.Connection

    Dim Rs As ADODB.Recordset

    Dim sql As String

    Dim ExcelApp As Excel.Application

    Dim ExcelWst As Worksheet  ''excel窗体

    Dim RsCount As Integer    ''记录数

    Set Conn = CurrentProject.Connection    '''本地连接

    If TempSql = "" Then Exit Function
    ' sql = TempSql ' "select * from 书本"

    Set Rs = CreateObject("ADODB.Recordset")

    Rs.Open TempSql, Conn, 1   ' 1 = adOpenKeyset

    Set ExcelApp = New Excel.Application
    Set ExcelWst = ExcelApp.Workbooks.Add.Worksheets(1)

    ExcelWst.Name = TempName

    For col = 0 To Rs.Fields.Count - 1
        ExcelWst.Cells(1, col + 1) = Rs.Fields(col).Name
    Next

    row = 2
    RsCount = Rs.RecordCount

    Rs.MoveFirst

    While Not Rs.EOF

        For col = 0 To Rs.Fields.Count - 1

            ExcelWst.Cells(row, col + 1) = Rs.Fields(col)

            ''转换日期型字符的表示格式
            If Rs.Fields(col).Type = 7 Then

                ExcelWst.Cells(row, col + 1).NumberFormatLocal = "yyyy-m-d;@"

            End If

        Next

        row = row + 1
        Rs.MoveNext
    Wend


    Rs.Close

    Set Rs = Nothing
    Set Conn = Nothing

    ExcelApp.Visible = True

Err:
    Exit Function
End Function


Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助