Вот ветка, где говорили об xml http://help.leadersoft.ru/tabid/74/forumid/1/threadid/9204/scope/posts/Default.aspx
Ответы: 1. Dim objElem As MSXML2.IXMLDOMElement ' Найти 1 элемент 'uzel' Set objElem = objXML.selectSingleNode("//uzel") Debug.Print objElem.getAttribute("name") 2. Нажмите F2, введите attributes и получите описание Member of MSXML2.DOMDocument the collection of the node's attributes 3. objElem.getAttribute("name") - Если будет ошибка, то атрибута name нет или читайте массив атрибутов
Самое главное в этом вопросе научиться пользоваться отладчиком. Запоминать, что содержит каждый элемент класса - это нереально. Ставите точку прерывания в нужном месте и смотрите в перемнных значения. Запоминать нужно только название класса и для чего он нужен и желательно недостатки. Данный класс читает XML файл, позволяет двигаться по нему, НО ОЧЕНЬ медленный и не годится для чтения больших файлов. Вот короткий пример чтения во внутренню переменную XML файл имен и атрибутов одной функцией GetData Set RootNode = xmlDoc.selectSingleNode("yml_catalog/shop") For Each ProgNode In RootNode.selectNodes("program") With Program ' Данные по ценам программы allsoft.ru Set nodes2 = nd.selectSingleNode("prices") k = 0 For Each nd2 In nodes2.selectNodes("price") ReDim Preserve .versions(j).prices(k) .versions(j).prices(k).id = GetData(nd2, "id", -1, "attr") .versions(j).prices(k).name = GetData(nd2, "name") k = k + 1 Next ... ' Читаем узел Public Function GetData(nd As IXMLDOMElement, NameData As String, Optional DefaultValue As String = "", Optional TypeData As String = "Text") As Variant On Error GoTo 999 If TypeData = "Text" Then GetData = nd.selectSingleNode(NameData).Text Else GetData = nd.Attributes.getNamedItem(NameData).Text End If Exit Function 999: GetData = DefaultValue End Function