将 Access 表导出到 Excel 错误
Posted
技术标签:
【中文标题】将 Access 表导出到 Excel 错误【英文标题】:Exporting Access Tables to Excel Error 【发布时间】:2018-07-06 20:38:41 【问题描述】:我正在尝试将访问表导出到 Excel,但在输入查询和路径名时不断收到“错误,预期标识符”。下面是代码:
Sub exportToXl()
On Error GoTo ErrorHandler
Dim dbTable As String
Sub dmwExport("SuperDash_Usage_Rpt", "L:\WF Reporting\Superdash\SuperdashRpt.xlsx")
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DoCmd.TransferSpreadsheet _
TransferType:=acExport, _
SpreadsheetType:=acSpreadsheetTypeExcel12Xml, _
TableName:="SuperDash_Usage_Rpt", _
FileName:=L:\WF Reporting\Superdash\SuperdashRpt.xlsx, _
HasFieldNames:=True
End Sub
这是我的访问表中的确切查询名称以及我想要导出表的路径。我做错了什么?
【问题讨论】:
【参考方案1】:将Sub dmwExport
更改为Call dmwExport
【讨论】:
我在 Sub dmwexport("Superdash_Usage_rpt", "L:\WF Reporting\Superdash\SuperdashRpt.xlsx") 之后定义查询名称时遇到错误 @JennaTerral 更新答案 虽然这可能会回答问题,但最好添加一些关于此答案如何有助于解决问题的描述。请阅读How do I write a good answer 了解更多信息。【参考方案2】:您可能需要在文件路径周围添加" "
,以便将其作为文本而非变量读取。
像这样:
Sub exportToXl()
On Error GoTo ErrorHandler
Dim dbTable As String
Sub dmwExport("SuperDash_Usage_Rpt", "L:\WF Reporting\Superdash\SuperdashRpt.xlsx")
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DoCmd.TransferSpreadsheet _
TransferType:=acExport, _
SpreadsheetType:=acSpreadsheetTypeExcel12Xml, _
TableName:="SuperDash_Usage_Rpt", _
'Added "" around file path in order to be read as text
FileName:="L:\WF Reporting\Superdash\SuperdashRpt.xlsx", _
HasFieldNames:=True
End Sub
您也可以“速记”DoCmd.TransferSpreadSheet
。
例子:
DoCmd.TransferSpreadSheet acExport, acSpreadSheetTypeExcel12Xml, "SuperDash_Usage_Rpt", "L:\WF Reporting\Superdash\SuperdashRpt.xlsx", True
我希望这会有所帮助!
【讨论】:
以上是关于将 Access 表导出到 Excel 错误的主要内容,如果未能解决你的问题,请参考以下文章
将数据从 Excel 导出到 Access - 错误:参数不是可选的
将具有多个表的 Access 数据库导出到具有多个工作表的 Excel