[英]Importing Excel Spreadsheet into Access using DoCmd.TransferSpreadsheet Creates Duplicates
[英]Unable to open .xlsx file exported from Access 2010 using DoCmd.TransferSpreadsheet
我在使用DoCmd.TransferSpreadsheet
命令將表從 MS Access 2010 導出為 Excel 2010 格式時遇到問題。 代碼在 Access 中運行沒有錯誤,並創建了文件。 但是,當我嘗試在 Excel 2010 中打開文件時,我收到以下錯誤消息: Excel 無法打開文件“XXXXX.xlsx”,因為文件格式或文件擴展名無效。 驗證文件沒有損壞並且文件擴展名與文件格式匹配。 這是我用來設置然后執行導出的代碼:
exportFileName = "\\network1\share$\filename_" & ".xlsx"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "tablename", exportFileName, True
我在發布之前查看了許多可能的解決方案,所以我嘗試了
acSpreadsheetTypeExcel12
替換acSpreadsheetTypeExcel12Xml
10
或9
替換acSpreadsheetTypeExcel12
File -> Open
對話框打開文件,而不是雙擊文件這些都沒有解決問題。
我找到的一個解決方案如下:
exportFileName = "\\network1\share$\filename_" & ".xls"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "tablename", exportFileName, True
其中擴展名為.xls
,電子表格類型為acSpreadsheetTypeExcel8
。 我現在可以使用這個,但我會很感激任何其他可能的建議。
我最近發現了另一種可以用來導出 excel 文件的方法。
DoCmd.OutputTo acOutputQuery, "YourTableName", acFormatXLSX, exportFileName
這應該按預期工作
exportFileName = "\network1\share$\文件名";
這對我來說很好,沒有擴展名,系統會為你確定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.