VBA循环通过XML节点

你好,我想循环之间的xml节点,但由于某种原因,我只得到第一个节点的任何想法将不胜感激! XML:

<root> <AC> <answer id ="c1"> blue </answer> <answer id ="c1"> blue </answer> </root> 

VBA代码:

  Set ques = getQues(qName) 'ques is in CreateObject("MSXML2.DOMDocument") format Set nodes = ques.SelectNodes("/root/AC") For Each node In nodes MsgBox (node.SelectSingleNode("answer").Text) Cells(i + 1, j).Value = node.SelectSingleNode("answer").Text Next node 

感谢您的帮助!

您的selectnodes只selectAC节点:看起来您确实想要selectanswer节点的集合 –

 Sub Tester() Dim d As New MSXML2.DOMDocument Dim nodes, nd d.LoadXML Range("A1").Value Set nodes = d.SelectNodes("/root/AC/answer") For Each nd In nodes Debug.Print nd.getAttribute("id"), nd.Text Next nd End Sub