我使用Recordset将5个查询从Access表单导出到Excel,方法是循环Excel对象并在每次循环它时创建一个新的excel。最后,当我想要突出显示第一个工作表时,它抛出一个错误no : 1004
<code>
'Once the loop ends
xlWorkbook.Sheets("xlsheet1").Select
xlSheet.Range("A3").Select
</Code>
But when I select the last sheet which is by default highlighted I don't get the error.
<code>
'Once the loop ends
xlWorkbook.Sheets("xlsheet5").Select
xlSheet.Range("A3").Select
</Code>
Can someone help me with this.
Thanks in Advance.发布于 2017-03-26 03:11:46
它就像这样简单。
Private Sub ExportExcel()
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "your_query", "C:\your_path_here\your_excel_file.xlsx", True
End Sub下面是'DoCmd.TransferSpreadsheet acExport‘函数的参数屏幕截图:

因此,倒数第二个参数是工作表名称。有关更多信息,请参阅此。
http://access-excel.tips/access-vba-cocmd-transferspreadsheet/
最后,像这样的东西应该对你有效。
选项比较数据库
Private Sub Command0_Click()
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel10, "Query1", _
"C:\Users\your_path\access_export.xlsx", True, "Query1"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel10, "Query2", _
"C:\Users\your_path\access_export.xlsx", True, "Query2"
End Sub我不能在我的工作机器上测试它,因为它被锁得太紧了,我几乎不能做任何工作。
https://stackoverflow.com/questions/42972181
复制相似问题