![](/img/trans.png)
[英]MS Access - How to properly use Pass-Through queries as source for form
[英]How can I create a VBA function (for Access 2010) that exports pass-through queries as XML files?
当前,我正在使用Access2010。我已经使用TSQL创建和存储多个传递查询。
以前,我使用以下VBA定期导出本机(到Access 2010)“选择”查询:
Sub ExportToXmlFile()
Application.ExportXML ObjectType:=acExportQuery, DataSource:="Query1", DataTarget:="C:\Desktop\Query1.xml"
Application.ExportXML ObjectType:=acExportQuery, DataSource:="Query2", DataTarget:="C:\Desktop\Query2.xml"
End Sub
但是,自从将Query1和Query2重做为直通查询以来,我收到以下运行时错误:“ 7798:您只能将选择查询,交叉表和联合查询保存为这种格式”。
因此,我想知道如何重写上述VBA,以便能够将直通查询导出为XML文件?
笔记:
在研究此问题时,我偶然发现以下问题: 无法导出查询传递... Google网上论坛
似乎可行的解决方案是将传递查询存储为临时表,然后将临时表导出为XML文件。 不幸的是,我一直试图重写上面的VBA,但没有成功。
您发现ExportXML
将不接受传递查询。 但是,至少在Access 2007中,您可以通过创建使用传递作为其数据源的新查询来轻松解决此限制。 然后, ExportXML
将接受新查询而不会产生投诉。
创建此查询并将其另存为qryFromPassthru :
SELECT *
FROM Query1;
然后将qryFromPassthru与ExportXML
结合使用:
Application.ExportXML ObjectType:=acExportQuery, _
DataSource:="qryFromPassthru", DataTarget:="C:\Desktop\Query1.xml"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.