Sub main()
Dim xml As MSXML2.DOMDocument60
Dim sb$
Dim xNode As IXMLDOMElement
Dim xRoot As IXMLDOMElement
Set xml = New MSXML2.DOMDocument60
sb = Chr(62) & vbNewLine & Chr(60)
xml.appendChild xml.createProcessingInstruction("xml", "version='1.0' encoding='utf-8'")
Set xRoot = xml.createElement("Document")
xRoot.setAttribute "xmlns:xsi", "http://blabla/2001/blablabla"
xRoot.setAttribute "xmlns:dtr", "http://blabla.ru/blabla/blabla"
Set xNode = xml.createElement("Rows")
xNode.appendChild xml.createElement("row")
xNode.appendChild xml.createElement("row")
xNode.appendChild xml.createElement("row")
xRoot.appendChild xNode
xml.appendChild xRoot
xml.LoadXML Replace(xml.xml, "><", sb)
MsgBox xml.xml
End Sub
Как видно, второй вариант xml документа отличается от первого тем что перед каждым значением тега стоит "dtr:"
PS: Вариант добаления путем сцепления сейчас использую
Скрытый текст
Код
Sub main()
Dim xml As MSXML2.DOMDocument60
Dim sb$
Dim xNode As IXMLDOMElement
Dim xRoot As IXMLDOMElement
Set xml = New MSXML2.DOMDocument60
sb = Chr(62) & vbNewLine & Chr(60)
xml.appendChild xml.createProcessingInstruction("xml", "version='1.0' encoding='utf-8'")
Set xRoot = xml.createElement(getNS & "Document")
xRoot.setAttribute "xmlns:xsi", "http://blabla/2001/blablabla"
xRoot.setAttribute "xmlns:dtr", "http://blabla.ru/blabla/blabla"
Set xNode = xml.createElement(getNS & "Rows")
xNode.appendChild xml.createElement(getNS & "row")
xNode.appendChild xml.createElement(getNS & "row")
xNode.appendChild xml.createElement(getNS & "row")
xRoot.appendChild xNode
xml.appendChild xRoot
xml.LoadXML Replace(xml.xml, "><", sb)
MsgBox xml.xml
End Sub
Function getNS()
getNS = "dtr:"
End Function
Интересует есть ли какие-то штатные методы у MSXML2.DOMDocument60 , а не этот костыль