我想在Access to Excel中的一个记录集中导出一些数据。
我知道DoCmd.TransferSpreadsheet命令,但它只适用于存储的查询,在我的情况下,它是一个运行时过滤的记录集。
我尝试过一些代码来做我想要的事情。我可以获取导出的数据但我无法从记录集中获取列名。
有关命令的任何建议或如何从记录集中获取这些列名吗?
答案 0 :(得分:3)
DAO记录集可以使用name
属性。
Dim rs As DAO.Recordset
Set rs = CurrentDb.OpenRecordset("SELECT * FROM ARTIKELGRUPPE")
Debug.Print rs.Fields(0).Name
Debug.Print rs.Fields(1).Name
我桌子的输出:
id
Name
答案 1 :(得分:1)
您可以在调用转移电子表格之前更改存储的查询
Dim myQuery As QueryDef
Set myQuery = CurrentDb.QueryDefs("SampleQuery")
myQuery.SQL = "SELECT * FROM myTable WHERE something"
DoCmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9, "SampleQuery", "c:\test.xls"