Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1796to1800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
xml per VBA erstellen
30.11.2020 16:23:40
Werner
Hallo,
ich erstelle eine XML Datei per VBA eigentlich kein Problem, aber wie füge ich einem Element ein "Type" hinzu?
Code VBA:
Dim xml As Object
Dim xmlORDER_LIST As MSXML2.IXMLDOMElement
Dim xmlORDER As MSXML2.IXMLDOMElement
Set xml = CreateObject("MSXML2.DOMDocument")
Set xmlORDER_LIST = xml.createElement("ORDER_LIST")
xml.appendChild xmlORDER_LIST
Set xmlORDER = xml.createElement("ORDER")
xmlORDER_LIST.appendChild xmlORDER
With xmlORDER
.appendChild(xml.createElement("Emloyee55")).Text = "Test"
.appendChild(xml.createElement("Phone")).Text = "05111231254"
End With
End Sub
und so sollte das in XML Datei aussehen:
ORDER_LIST
ORDER
Emloyee55>Test
Phone type="other">05111231254
ORDER
ORDER_LIST
Für eine Hilfestellung wäre ich sehr dankbar
Best Grüße

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: xml per VBA erstellen
30.11.2020 17:10:08
Yal
Hallo Werner,
wenn es innerhalb eines Tags ist, dann ist es ein Attribut.
Wirf eine Auge auf IXMLDOMAttribute.
Viel Erfolg
Yal
AW: xml per VBA erstellen
01.12.2020 09:09:55
Werner
Hallo Yal,
der Hinweis hat mir weitergeholfen.
Vielen Dank
Werner
Vielen Dank für die Rückmeldung. oT
01.12.2020 10:34:47
Yal
AW: Vielen Dank für die Rückmeldung. oT
02.12.2020 09:59:31
Werner
Hallo Yal,
benötige nochmals eine kleine Hilfestellung bzgl. XML.
Mein Code sieht so aus:
'neues XML - Objekt erzeugen
Set xml = New MSXML2.DOMDocument60
' Die oberste Hierarchiestufe erstellen
xml.LoadXML ""
xml.appendChild xml.createProcessingInstruction("xml", "version=""1.0"" encoding=""ISO-8859-1""")
Set xmlORDER_LIST = xml.createElement("ORDER_LIST")
xml.appendChild xmlORDER_LIST
' Die ORDER unter ORDER_LIST erstellen
Set xmlORDER = xmlORDER_LIST.appendChild(xml.createElement("ORDER"))
xmlORDER_LIST.appendChild xmlORDER
' Creates Attribute für ORDER Element
Set xmlORDERATTR = xml.createAttribute("xmlns")
xmlORDERATTR.NodeValue = "http://www.opentrans.org/XMLSchema/1.0"
xmlORDER.setAttributeNode xmlORDERATTR
Set xmlORDER_HEADER = xmlORDER.appendChild(xml.createElement("ORDER_HEADER"))
xmlORDER.appendChild xmlORDER_HEADER
und die XML Datei so:
?xml version="1.0" encoding="ISO-8859-1"?
ORDER_LIST
ORDER xmlns="http://www.opentrans.org/XMLSchema/1.0"
ORDER_HEADER xmlns=""
CONTROL_INFO
GENERATOR_INFO>Shopware5
GENERATOR_DATE>02.12.2020
/CONTROL_INFO
ORDER_INFO
Das Problem ist im Element "ORDER_HEADER" dort steht nun auch xmlns="" und das sollte nicht sein. Kann man das Attribut auch wieder ausstellen.
Vielen Dank im Voraus
Werner
Anzeige
AW: Vielen Dank für die Rückmeldung. oT
03.12.2020 17:14:59
Yal
Sorry Werner, keine Ahnung.
Es scheint sich einfach zu vererben.
Mein XML-Wissen reicht an der Stelle nicht.
VG
Yal
AW: Vielen Dank für die Rückmeldung. oT
03.12.2020 18:00:11
Werner
Hallo Yal,
kein Problem, hat sich mittlerweile zum positiven Erledigt. Tino hat mir die Lösung übermittelt.
Das war der Punkt:
xmlORDER.setAttribute "xmlns", "http://www.opentrans.org/XMLSchema/1.0"
Ich bin zu kompliziert an die Sache gegangen.
Besten Dank nochmals und einen
schönen Abend
Werner

28 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige