Что такое DomDocument?

Содержание

DomDocument - это контейнер (переменная / объект) для хранения XML-документа в вашем коде VBA.

Так же, как вы используете строковую переменную для хранения строкового значения, вы можете использовать DomDocument для хранения XML-документа.

(полный список свойств DomDocuments см. в середине страницы)

Почему меня волнует, что такое DomDocument?

В Excel есть несколько очень интуитивно понятных способов переноса XML в электронную таблицу (XML Maps), но:

• Что делать, если вы хотите манипулировать данными после того, как вы их получили, но до того, как данные появятся в ваших ячейках?

• Что делать, если вы хотите импортировать данные XML в элементы управления вместо сопоставленных ячеек, таких как поля со списком, метки или текстовые поля?

Обе эти задачи сложно (если не невозможно) выполнить с помощью карт XML. Однако мы можем импортировать XML-данные в DomDocument, затем извлечь нужные нам данные, записать их в элементы управления, отфильтровать данные или манипулировать данными до того, как они появятся в электронной таблице.

Как загрузить XML в DomDocument?

В следующем примере используется Excel 2003. В редакторе Visual Basic перейдите в Инструменты-> Ссылки и установите флажок «Microsoft XML v5.0».

Теперь нам нужен XML. Недавно я создал карту сайта Google для этого сайта, и она в XML, поэтому давайте воспользуемся этим: AutomateExcel Google XML Sitemap

Чтобы загрузить мой XML-документ SiteMap в объект DomDocument в Excel, используйте следующий код (который поясняется с комментариями):

1234567891011121314151617181920212223242526272829303132333435 Sub DomDocumentBasic ()Dim oDom как MSXML2.DOMDocument'Создать объект DomDocumentУстановите oDom = CreateObject ("MSXML2.DOMDocument")'Загрузите весь документ перед тем, как продолжитьoDom.async = Ложь'Не проверятьoDom.validateOnParse = ЛожьoDom.Load ("AutomateExcel Google XML Sitemap")MsgBox oDom.XMLКонец подписки

Код просто загружает XML и отображает его в окне сообщения:

Примечание. Если вы загружаете XML с URL-адреса и у вас возникли проблемы, убедитесь, что вы не забыли строку «oDom.async = Ложь“.

Как пройти через DomDocument?

Теперь, когда у меня есть XML-данные в объекте, как мне «что-то сделать» с ними?

LOL, я все еще изучаю эту часть. Я опубликую основы в одном из следующих постов и дам ссылку здесь.

Заголовок сообщения был «Что такое DomDocument», надеюсь, теперь у вас есть идея.

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave