使用VBA查询并将xml属性值解析为XLS

时间:2011-03-04 02:26:08

标签: xml excel parsing vba

我正在尝试打开/加载B2范围内的Excel工作表中指定的XML文件。然后,搜索name=FUNCTIONAL_ITEM的XML属性列表,并在">之后获取所有属性值。

在以下示例中,我想提取值8910

<Attribute name="BIN" dataType="String" unit="" multiplier="" tag="LINE,MRPM">1</Attribute>
<Attribute name="FUNCTIONAL_ITEM" dataType="Double" unit="" multiplier="" tag="LINE,LINE DB">8</Attribute>
<Attribute name="FUNCTIONAL_ITEM" dataType="Double" unit="" multiplier="" tag="LINE,LINE DB">9</Attribute>
<Attribute name="FUNCTIONAL_ITEM" dataType="Double" unit="" multiplier="" tag="LINE,LINE DB">10</Attribute>

有人可以指出我正确的方向来实施这个。

1 个答案:

答案 0 :(得分:1)

您需要使用的是XPath。假设您在DomDocument60对象中包含XML文档,我们将其称为d并且您已声明名为IXMLDOMNodeList的{​​{1}}变量,请使用此:

i

然后,您可以遍历Set i = d.selectNodes("//Attribute[@name='FUNCTIONAL ITEM']")中的节点,并从每个节点中提取i属性。

这是一个相当简单的演示程序(你需要通过工具&gt;参考文献添加对“Microsoft XML,v6.0”的引用,如果你还没有这样做的话):

text