2011-05-05 33 views
0

我有一個Access應用程序,它實際上只是一堆辦公應用程序(Word,Excel,Ppt & Outlook)的自動化服務器,將信息導入並通過表單收集並生成各種的文件。XML導入語法的後期綁定轉換

它不是用作傳統意義上的數據庫,而是遠程文件用戶在現場使用所有自動化技巧,然後在完成所需的所有文件時丟棄它們。

所以最近,這裏的人們幫助我轉換到後期綁定,以幫助我從目標系統上的brocken引用中省去我的功能。它工作得很好!

所以現在我有一些xml導入代碼,需要設置xml v5才能運行。現在我以前遇到的問題是Excel,Powerpoint & Outlook對象庫引用從辦公版本更改爲版本(2003 = 11.0,2007 - 12.0等),但我想知道如果我在這裏會遇到同樣的問題。爲了讓事情變得更加複雜,我不知道Server/OS是否可以運行(XP,Vista,2003,2008 SP2等)。我真的不知道這是否重要,所以這就是我提到它的原因。

因此,如果它實際上會產生問題,那麼是否有人有一個關於此聲明的後期綁定轉換示例的想法?它似乎並不相同創建和辦公應用...

Sub PullingDataFromNodes() 
    dim xmlDoc as MSXML2.DOMDocument50 
    dim xmlNodeList As MSXML2.IXMLDOMNodeList 
    dim myNode as MSXML2.IXMLDOMNode 

    Set xmldoc = New MSXML2.DOMDocument50 
    xmldoc.async = False 
    xmldoc.Load ("C:/SomeFolder/xml.xml") 

    Set xmlNodeList = xmldoc.SelectNodes("//DataFieldNode") 
    Set myNode = xmlNodeList.item(0) 

    'etc...more of the same....pull data from node, place data into variable, then place 
    ' data in variable into recordset, use it to update table kind of thing 

於是,我就使用CreateObject與此,它似乎並沒有工作....任何人都可以提供和建議有了這個?

我使用xmlImport當我可以與阿格斯......但這個特定的解決方案是爲數據是通過一個Web應用程序提供的,他們既不嵌入架構,也沒有樣式表或.xsd

+2

你用什麼作爲你的CreateObject參數?你可能只是使用了錯誤的標識符。 – 2011-05-06 02:15:32

+0

「我可以用阿古斯起訴xmlImport」那是什麼語言? :-) – HansUp 2011-05-06 04:40:11

+0

我認爲你是對的,因爲現在的工作很好。 @Hans ....我試着在任何時候和任何地方起訴:) – Justin 2011-05-07 12:39:47

回答

1

我有類似的代碼使用MSXML2.DOMDocument.3.0,所以我把它切換到5,它仍然工作。我不知道不同的版本。我只能建議你這樣試試,看看會發生什麼。

Sub PullingDataFromNodes() 
    dim xmlDoc As Object 
    dim xmlNodeList As Object 
    dim myNode As Object 

    Set xmldoc = CreateObject("MSXML2.DOMDocument.5.0") 
    xmldoc.async = False 
    xmldoc.Load "C:/SomeFolder/xml.xml" 

    Set xmlNodeList = xmldoc.SelectNodes("//DataFieldNode") 
    Set myNode = xmlNodeList.item(0)