14.VBA处理xml文件

时间:2022-07-22
本文章向大家介绍14.VBA处理xml文件,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Excel通过CreateObject函数极大地赋能了VBA。VBA可以通过CreateObject调用Microsoft.XMLDOM来处理xml文件。

Private Sub CommandButton3_Click()
Dim xmlDoc, xmlRoot, ChildItem, msg
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.Load "E:abVBAal.xml" '使用load方法来加载xml文档,建立dom树和xml文档之间的关联
Set xmlRoot = xmlDoc.DocumentElement '获取XML文档的根元素节点
Set xmlnode = xmlDoc.SelectSingleNode("//Array[@PropName='logAsSpecifiedByModelsSSIDs_']")
With xmlnode
    'Set upNode = .SelectSingleNode("..").SelectSingleNode("..")
    Set upNode = .SelectSingleNode("..")
    ActiveSheet.Cells(9, 1).Value = upNode.Attributes.Item(1).Text
End With
End Sub

Set xmlDoc = CreateObject("Microsoft.XMLDOM")实例化一个处理xml文件的对象;xml对象的Load方法可以来加载xml文件。Set xmlnode = xmlDoc.SelectSingleNode("//Array[@PropName='logAsSpecifiedByModelsSSIDs_']")是通过Xpath的方法在xml文件中搜索选出节点标签为Array,属性PropName='logAsSpecifiedByModelsSSIDs_'的节点。注意:"//"不限制当前所处的节点位置,可以在全文件中搜索标签为Array的节点;@表示选取属性。SelectSingleNode("..")表示当前所处节点的父节。.Attributes.Item(1).Text表示该节点的第二个属性的值。