使用VBA从XML标记获取数据
我有以下格式的XML文件使用VBA从XML标记获取数据,xml,vba,Xml,Vba,我有以下格式的XML文件 <?xml version="1.0" encoding="UTF-8"?> <root1> <root2> <value1 claimed="23"/> <value2 claimed="3343"/> <value3 claimed="5656"/> </root2> </root1> 此代码适用于以下XML结构
<?xml version="1.0" encoding="UTF-8"?>
<root1>
<root2>
<value1 claimed="23"/>
<value2 claimed="3343"/>
<value3 claimed="5656"/>
</root2>
</root1>
此代码适用于以下XML结构
<?xml version="1.0" encoding="UTF-8"?>
<root1>
<root2>
<value1>23</value1>
<value2>3343</value2>
<value3>5656</value3>
</root2>
</root1>
23
3343
5656
任何人都可以为此更新我的VBA代码
提前感谢。您可以尝试将属性选择器附加到XPath查询:
subtestxml()
设置xmlDoc=CreateObject(“Microsoft.XMLDOM”)
xmlDoc.setProperty“SelectionLanguage”、“XPath”
xmlDoc.async=False
'XML文件
加载(ThisWorkbook.Sheets(1).范围(“A1”).值)
'XPath存储在这里
设置nodeXML=xmlDoc.SelectNodes(范围(“A2”)。值&/@claired)
列(“B:B”)。清除
对于i=0到nodeXML.Length-1
范围(“B”&i+1).Value=nodeXML(i).NodeValue
下一个
端接头
我还删除了一些冗余代码,并对其进行了一些修改。而不是
。Text
尝试使用此.getAttribute(“声明”)
。它应该解决这个问题。