0
A
回答
1
您可以使用VBA嗎?
智能感知會幫助你,但上手:
DoCmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9, 「my_query_name」, 「C:\ myfilename.xls」
注意:您可以有不同的Excel版本 「my_query_name」是你的查詢或表 你需要設置文件位置的適當位置\名稱的名稱。擴展名
+0
我試過了,但我一直收到一個文件不存在在該位置錯誤。 – zSynopsis 2009-09-18 20:43:38
4
您可能需要考慮使用自動化來創建Excel電子表格並自行填充它,而不是使用宏。
這是我以前用過的功能。
Public Function ExportToExcel(FileToCreate As String, ByRef rst As ADODB.Recordset)
'Parms: FileToCreate - Full path and file name to Excel spreadsheet to create
' rst - Populated ADO recordset to export
On Error GoTo Err_Handler
Dim objExcel As Object
Dim objBook As Object
Dim objSheet As Object
'Create a new excel workbook; use late binding to prevent issues with different versions of Excel being
'installed on dev machine vs user machine
Set objExcel = CreateObject("Excel.Application")
Set objBook = objExcel.Workbooks.Add
'Hide the workbook temporarily from the user
objExcel.Visible = False
objBook.SaveAs (FileToCreate)
'Remove Worksheets so we're left with just one in the Workbook for starters
Do Until objBook.Worksheets.Count = 1
Set objSheet = objBook.Worksheets(objBook.Worksheets.Count - 1)
objSheet.Delete
Loop
Set objSheet = objBook.Worksheets(1)
rst.MoveFirst
'Use CopyFromRecordset method as this is faster than writing data one row at a time
objSheet.Range("A1").CopyFromRecordset rst
'The UsedRange.Rows.Count property can be used to identify the last row of actual data in the spreadsheet
'This is sometimes useful if you need to add a summary row or otherwise manipulate the data
'Dim lngUsedRange As Long
'lngUsedRange = objSheet.UsedRange.Rows.Count
'Save the spreadsheet
objBook.Save
objExcel.Visible = True
ExportToExcel = True
Err_Handler:
Set objSheet = Nothing
Set objBook = Nothing
Set objExcel = Nothing
DoCmd.Hourglass False
If Err.Number <> 0 Then
Err.Raise Err.Number, Err.Source, Err.Description
End If
End Function
+0
這段代碼適合我,但唯一的問題是,Excel數據沒有標題..我怎麼能添加它? – 2016-04-12 07:18:12
相關問題
- 1. 將MS SQL Server查詢結果導出到MS Access
- 2. 使用vba-MS將查詢結果導出到文本文件中Access
- 3. MS Access窗體(VBA)查詢和定期查詢給出不同的結果
- 4. 以編程方式將MS Access查詢結果導出到CSV
- 5. MS Access VBA選擇查詢
- 6. MS Access 2010 vba查詢
- 7. SQL查詢在MS Access VBA
- 8. MS Access VBA查詢。選擇其次,然後計算結果
- 9. 當使用VBA在MS Access中導出查詢時丟失行
- 10. MS Access VBA導出到TXT錯誤
- 11. 如何將MS Access查詢的結果導出到Excel的特定工作表
- 12. 刷新MS Access查詢(VBA代碼)
- 13. 的MS Access VBA查詢多個表
- 14. MS Access查詢
- 15. MS Access:查詢
- 16. MS Access查詢
- 17. MS ACCESS查詢
- 18. ms-access查詢
- 19. 導入附加vba MS-Access
- 20. 如何在VBA/Access中查詢設計的查詢結果debug.print
- 21. 從Oracle通過MS Access 2003導出到MS Excel的查詢
- 22. 導出查詢結果
- 23. MS ACCESS查詢子查詢
- 24. 使用vba輸出MS Access查詢到Excel
- 25. MS Access子查詢
- 26. MS Access子查詢
- 27. 查詢的MS Access
- 28. 將查詢導出到Excel並將數據放入表MS Access 2013 VBA
- 29. 在MS Access VBA中使用選擇查詢更新查詢
- 30. MS ACCESS vba select
你可以發佈你的代碼嗎? (在我的回答中,你表示你試過docmd。) – JeffO 2009-09-18 21:03:39
什麼是Excel的目標版本?行數的限制毫無疑問是Excel的限制,而不是Access的限制。 Excel 2007增加了行數,順便說一句。 – 2009-09-20 02:52:28
事實上,託尼,我認爲Access 2002標籤在這裏是有用的信息,因爲它限制了導出格式。當然,我認爲應該使用標籤的方式是隻應使用MS-ACCESS,並在問題中指出特定版本,但是您刪除了標籤但未將版本添加到問題文本中。在我看來,這會丟失有用的信息。 – 2010-09-11 19:41:16