新建查询批量导出excel-大海
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


新建查询批量导出excel

发表时间:2017/12/9 8:22:17 评论(0) 浏览(13920)  评论 | 加入收藏 | 复制
   
摘 要:新建查询批量导出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群(群号:198465573)
 
 相关文章
access导出EXCEL  【邹维民  2009/5/22】
access vba之数据导出excel和html  【麥田  2012/8/15】
【VB.NET小品】EXCEL表的两种导入导出方法  【煮江品茶  2014/11/26】
导出数据时给word表格增加行数  【张志  2017/1/17】
Access导出日期到Excel中的时候,防止单元格格式自动转换  【易勋  2017/10/8】
常见问答
技术分类
相关资源
文章搜索
关于作者

大海

文章分类

文章存档

友情链接