只需要从访问数据库中的查询中提取/导出 2 列到 excel
Posted
技术标签:
【中文标题】只需要从访问数据库中的查询中提取/导出 2 列到 excel【英文标题】:Need only 2 columns to be pulled/export from query in access data base to excel 【发布时间】:2020-09-01 15:18:11 【问题描述】:我有一个宏将查询从 Access 数据库导出到 excel。但是,我需要宏仅将 2 列(前 2 列)导出到 excel,我无法弄清楚请帮忙。下面是数据库截图和代码。
I need the first 2 columns i.e. "County" and "Lisa Madigan" to be exported in an excel file
代码:-
Option Compare Database
Option Explicit
Public Sub ExportToExcel()
Dim xl As Excel.Application
Dim wbtarget As Workbook
Dim qdAGC As QueryDef
Dim rsAGC As Recordset
'Set up reference to the query to export
Set qdAGC = CurrentDb.QueryDefs("qdAGC")
'Debug.Print qdAGC.SQL
'Set up the parameter
'Execute the query
Set rsAGC = qdAGC.OpenRecordset()
'programetically reference exel
Set xl = CreateObject("Excel.Application")
'set ref to the export workbook
Set wbtarget = xl.Workbooks.Open("Path")
'Clear excel sheet
wbtarget.Worksheets("Sheet1").Cells.ClearContents
'use paste from recordset to put in excel sheet
wbtarget.Worksheets("Sheet1").Cells(1, 1).CopyFromRecordset rsAGC
'save workbook
wbtarget.Save
wbtarget.Close
Set wbtarget = Nothing
Set xl = Nothing
Set qdAGC = Nothing
End Sub
【问题讨论】:
【参考方案1】:这应该超级简单
打开这个查询:qdAGC
记下查询中前两列的名称。
然后把你的代码改成这个(显然改掉名字):
Set qdAGC = CurrentDb.Openrecordset("SELECT ColumnOne, ColumnTwo FROM qdAGC")
还有另一种方法可以做同样的事情。签出:
DoCmd.TransferSpreadsheet
【讨论】:
以上是关于只需要从访问数据库中的查询中提取/导出 2 列到 excel的主要内容,如果未能解决你的问题,请参考以下文章