2011-07-13 137 views
1

我想導出一些數據在訪問Excel的一個記錄集。從訪問導出到Excel

我知道DoCmd.TransferSpreadsheet命令,但它只適用於存儲的查詢,在我的情況下它是一個運行時過濾的記錄集。

我試過一些代碼來做我想做的事。我可以獲取導出的數據,但無法從記錄集中獲取列名。

對命令的任何建議或如何從記錄集中獲取這些列名?

回答

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

你可以做同樣的與ADO記錄集之前改變存儲的查詢,他們有'名稱「屬性。 –

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"