0

这是我第一次尝试MSXML2.DOMDocument在 VBA 中使用,我有一个“嗯?” 刚开始的那一刻。我的文件看起来像这样......

<Locations>
    <Location ID="23456">
        <Properties>
            <Property ID="12345">
etc.

我想用所有位置 ID 进行报告,所以我:

Set locs= XDoc.SelectNodes("//Location")
For Each loc In locs
     Debug.Print loc.Attributes(0).Text
Next

我得到了23456。耶!但是,当然,这些属性可能会移动,所以让我们解决这个问题......

     Debug.Print loc.getAttribute("ID").Text

那返回Object required。查看调试器,我可以看到它loc有一个属性,它nameID. 这似乎是对的。我还可以看到 loc.getAttribute("ID") 返回 null。这似乎是错误的。

那么这里发生了什么?

4

1 回答 1

0

我根本不知道 VBA,但我的猜测是 .attributes[] 属性返回一个属性对象(XmlAttribute?),它可以让您访问它的标识符和值,而 getAttribute() 函数是具有该标识符的属性的文本值。

于 2018-05-08T20:39:08.183 回答