1

我想使用 VBA 读取 XML 文件的一个或两个嵌套节点的值。(我尝试使用 DOM ( MSXML.DOMDocument)。)

例如,我想从以下 XML 中确定/szamla/fejlec/elado/nev/节点的值为“Budapesti Elektromos Művek Nyrt”。

<?xml version="1.0" encoding="ISO-8859-2" ?>
<szamla szamkor="000000200267" szafaz="800101068670" feldolgazon="35245830" 
   ugyfelaz="2200502333">
<fejlec>
<elado>
<nev>Budapesti Elektromos Művek Nyrt.</nev> 
<adoszam>10768033-2-44</adoszam> 
<cim>
 <orszag>Magyarország</orszag> 
 <telepules>Budapest</telepules> 
 <irszam>1132</irszam> 
 <kozternev>Váci út 72-74.</kozternev> 
</cim>
</elado>
...

<szamla szamkor="000000200267" szafaz="800101068670" feldolgazon="35245830" 
   ugyfelaz="2200502333">

这似乎是非常基本的,但我几个小时都无法弄清楚如何做到这一点。

4

1 回答 1

2

试试这个,看看它是否给你任何想法

Sub thing()

    Dim xmldoc As MSXML2.DOMDocument
    Set xmldoc = New MSXML2.DOMDocument

    xmldoc.loadXML "<one><two><three><four></four></three></two></one>"
    MsgBox xmldoc.selectSingleNode("/one/two/three/four").nodeName

End Sub

参考是Microsoft XML, v4.0. 对我来说,它位于 C:\WINNT\system32\msxml4.dll。

于 2012-10-12T01:08:14.397 回答