VBA使用SelectSingleNode循环XML节点

我正在尝试使用循环更新.xml文件中的节点值。

显示的oXMlFile.SelectSingleNode行正确地更新了单个节点,但我不知道如何修改代码,以便可以遍历所有节点并更新值。

任何帮助,将不胜感激。

 Set oXMLFile = CreateObject("Microsoft.XMLDOM") oXMLFile.Load (ConfigFile) 'Update Node Attributes Dim ii, TotChan As String ii = 0 TotCh = 500 Do While (ii < TotCh - 1) Set CalibrationDateTimeNode=oXMLFile.SelectSingleNode("/HConfig/Signal[0]/CalibrationDateTime") CalibrationDateTimeNode.Text = "2016-04-16" ii = ii + 1 Loop 

我不太清楚你确切需要什么,但是要通过xml节点循环,使用这个:

 Dim calibrationDateTimeNode As IXMLDOMNode Dim colNodes As IXMLDOMNodeList Set colNodes = oXMLFile.selectNodes("/HConfig/Signal[0]/...WhateverYouNeed") For Each CalibrationDateTimeNode In colNodes CalibrationDateTimeNode.Text = "2016-04-16" Next 

SelectNodes命令可以select一个节点列表,然后你可以迭代它的元素。 每个使用一个使得它比一个do-while更容易。 更不用说更快,如果我没有错。