我有一个Access应用程序,它实际上只是一堆办公应用程序(Word,Excel,Ppt& Outlook)的自动化服务器,可以导入信息,并通过表单收集并生成各种文件。
它不是传统意义上的数据库,而是用户在现场使用的所有自动化技巧的远程文件,然后在他们拥有所需的所有文件时丢弃。
所以最近所以这里的人帮助我转换为后期绑定,以便将我从目标系统上的brocken引用中删除,从而消除功能。它工作得很棒!
所以现在我有一些xml导入代码需要设置xml v5才能运行。现在我遇到的问题是Excel,Powerpoint& Outlook对象库引用从Office版本更改为版本(2003 = 11.0,2007 - 12.0等),但我想知道我是否会在此处遇到相同的问题。为了使事情变得更复杂,我不知道可能运行的服务器/操作系统(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,它似乎不起作用....有人可以提供和建议吗?
当我可以使用argus时,我使用xmlImport ....但是这个特殊的解决方案是通过Web应用程序提供的,他们既没有嵌入架构,也没有样式表或.xsd < / p>
答案 0 :(得分: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)