访问未导出的VBA TransferSpreadsheet数据,没有错误

时间:2014-12-22 23:23:25

标签: excel access-vba

我有一个Access应用程序,它使用VBA将数据导出到Excel .xlsm文件。

我的代码行是

 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "qry_ALL_Issue", fName, False, "IData"

然后我的代码继续打开Excel应用程序并运行宏,这就是为用户生成报告的原因。

我的问题是这可以在我的电脑上运行但不适用于其他人。我的错误陷阱永远不会被触发,所以我没有在Access中收到错误。 Excel中的错误陷阱在无法找到" IData"标签。我没有错误代码可以使用,因此很难弄清楚发生了什么。

我正在使用Office 2010而另一个人正在使用2007.我试图让他们打开Excel文件,修改它并保存它 - 没有任何变化。我让他们创建一个新的空白文件,这个新文件Access确实导出到。这意味着问题显然是Excel文件。所以问题是为什么我可以导出到.xlsm文件而另一个人不能?换句话说,他可以导出的文件可能出错但我可以吗?

1 个答案:

答案 0 :(得分:1)

直接从 MSDN 复制有关范围参数

一个字符串表达式,它是有效的单元格范围或电子表格中范围的名称。此参数仅适用于导入。将此参数留空以导入整个电子表格。导出到电子表格时,必须将此参数留空。如果输入范围,导出将失败。

导出时,必须省略Range参数。也许这与它有关?

http://msdn.microsoft.com/en-us/library/office/ff844793%28v=office.15%29.aspx