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

新建查询批量导出excel

时 间:2017-12-09 08:22:17
作 者:大海   ID:42003  城市:深圳
摘 要:新建查询批量导出excel
正 文:

新建一个查询,根据查询条件把access数据批量导出Excel

Sub accessTOexcel()
    Dim strsql As String
    Dim qry As DAO.QueryDef
    Set qry = CurrentDb.QueryDefs("导出查询")
    Dim rst As New ADODB.Recordset
    strsql = "Select DISTINCT  供应商 FROM 采购价格"
    rst.Open strsql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    rst.MoveFirst
    Do Until rst.EOF
        qry.Name = rst(0)
        qry.SQL = "select 商品名称,供应商 from 采购价格 where 供应商='" & rst(0) & "'"
        If Len(Dir(CurrentProject.Path & "\" & qry.Name & ".xls")) > 0 Then Kill CurrentProject.Path & "\" & qry.Name & ".xls"
        DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, qry.Name, CurrentProject.Path & "\" & qry.Name & ".xls", True
        rst.MoveNext
    Loop
    qry.Name = "导出查询"
End Sub
Sub 新建查询()
    Dim SQL0 As String
    SQL0 = "select * from 采购价格 where 1<>1"
    If SQL0 <> "" Then
        CreateQuery SQL0, "导出查询"
        Application.RefreshDatabaseWindow
    End If
End Sub
Private Sub CreateQuery(ByVal ssql As String, QueryName As String)
    Dim Qdef As QueryDef
    On Error Resume Next
    If DCount("*", "MSysObjects", "Type=5 and Name='" & QueryName & "'") = 0 Then
        Set Qdef = CurrentDb.CreateQueryDef(QueryName)
    Else
        Set Qdef = CurrentDb.QueryDefs(QueryName)
    End If
    Qdef.SQL = ssql
    Qdef.Close
    Set Qdef = Nothing
End Sub
Sub 删除查询()
    On Error Resume Next
    DoCmd.DeleteObject acQuery, "导出查询"
    Application.RefreshDatabaseWindow
End Sub
Public Function QueryExists(strQueryName As String) As Boolean
    Dim accQry As AccessObject
    QueryExists = False
    For Each accQry In CurrentData.AllQueries
        If strQueryName = accQry.Name Then
            QueryExists = True
            Exit For
        End If
    Next accQry
End Function


附   件:

点击下载此附件


图   示:




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

常见问答:

技术分类:

相关资源:

专栏作家

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