簡體   English   中英

如何創建VBA函數(用於Access 2010),將直通查詢導出為XML文件?

[英]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;

然后將qryFromPassthruExportXML 結合使用:

Application.ExportXML ObjectType:=acExportQuery, _
    DataSource:="qryFromPassthru", DataTarget:="C:\Desktop\Query1.xml"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM