我正在尝试使用循环更新.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
答案 0 :(得分:1)
我不太确定你到底需要什么,但要遍历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命令可以选择节点列表,然后可以迭代其元素。使用for each比使用for-do更容易。如果我没弄错的话,更不用说更快了。