Страницы: 1
RSS
Добавление элементов в xml с помощью VBA
 
Всем доброго времени суток. Товарищи - прошу помочь. Уже мозг поломал и все безрезультатно. Как по средствам VBA в Эксель добавлять в файл (как во вложении) пункты:
Код
<ИнфПолФХЖ1>
            <ТекстИнф Идентиф="основание" Значен="999"/>
         </ИнфПолФХЖ1>

И менять значение с 999 на значение из некой переменной?
В исходном файле вышеуказанных элементов нет вообще.

Заранее всем кто откликнется большое спасибо.
Изменено: vikttur - 13.09.2021 11:41:36
 
Было.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
эту тему видел и пытался повторить. Есть одна загвоздка... Допустим элемент "ИнфПолФХЖ1" я создам. А как создать <ТекстИнф Идентиф="основание" Значен="999"/>
Проблема в том что это не просто текстовое значение элемента ИнфПолФХЖ1. Оно заключено в <...>. И вот тут то и затуп :(
 
Михаил Пуш, "Идентиф" и "Значен" - это атрибуты "ТекстИнф". Поиск в помощь.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Вроде разобрался.
Может кому пригодиться:
Код
sXpath = "ДокПодтвОтгр"
    sFile = "адрес файла"
    With CreateObject("MSXML2.DOMDocument")
        .Load sFile
        Set newnode = .createElement("ИнфПолФХЖ1")
        Set objNode = .getElementsByTagName(sXpath).Item(0) 
        Set objRoot = objNode.ParentNode
        objRoot.InsertBefore newnode, objNode.NextSibling
        Set newel = .createElement("ТекстИнф")
        Set x = .getElementsByTagName("ИнфПолФХЖ1").Item(0)
        x.appendChild (newel)
        newel.setAttribute "Идентиф", "Основание"
        newel.setAttribute "Значен", "текст значения"
        .Save sFile
    End With
    Set newnode = Nothing: Set newel = Nothing
Страницы: 1
Наверх