Excel Datei nach XML transformieren
Lars
- xml
0 Axel Richter0 Lars
Hallo allerseits! :-)
Ich möchte gerne folgende XML Struktur aus einer Excel Datei generieren lassen. Die Inhalte der Knoten sollen zunächst in einem Excel Dokument eingepflegt werden, und dann nach XML transformiert werden können.
<level1>
<entry id="1">
<name>Getränke</name>
<level2>
<l2entry l2id="1">
<l2name>Alkoholfrei</l2name>
<level3>
<l3entry>
<l3name>Almdudler</l3name>
</l3entry>
<l3entry>
<l3name>Afri-Cola</l3name>
</l3entry>
<l3entry>
<l3name>Coca-Cola</l3name>
</l3entry>
<l3entry>
<l3name>Fanta</l3name>
</l3entry>
<l3entry>
<l3name>Sprite</l3name>
</l3entry>
<l3entry>
<l3name>Mineralwasser</l3name>
</l3entry>
</level3>
</l2entry>
</entry>
<entry>
... (usw. wie oben)
</entry>
</level1>
Gibt es da einen Weg diese Idee zu realisieren?
Viele Grüße
Lars
Hallo,
<level1>
<entry id="1">
<name>Getränke</name>
<level2>
<l2entry l2id="1">
<l2name>Alkoholfrei</l2name>
<level3>
<l3entry>
<l3name>Almdudler</l3name>
</l3entry>
<l3entry>
<l3name>Afri-Cola</l3name>
</l3entry>
<l3entry>
<l3name>Coca-Cola</l3name>
</l3entry>
<l3entry>
<l3name>Fanta</l3name>
</l3entry>
<l3entry>
<l3name>Sprite</l3name>
</l3entry>
<l3entry>
<l3name>Mineralwasser</l3name>
</l3entry>
</level3>
</l2entry>
</level2>
»» </entry>
<entry>
... (usw. wie oben)</entry>
</level1>
Ich hab die Struktur mal wohlgeformt gemacht.
Gibt es da einen Weg diese Idee zu realisieren?
Ja, schreibe ein VBA-Modul für Excel, welches die Tabellendaten als Textdatei mit diesem Inhalt ausgibt.
Extras - Makro - Visual Basic Editor - Einfügen - Modul
Du benötigst dafür
1. Zugriff auf Zellen des Excel-Tabelle
2. Textverkettung um Werte in Tags einzuschließen
3. eventuell den Speicher-Pfad der Excel-Datei
4. die Möglichkeit eine Textdatei mit Inhalt zu erzeugen
Beispiel:
Sub XMLAusgabe()
WertInZelleA1 = ActiveWorkbook.Sheets("Tabelle1").Range("A1").Value
MsgBox (WertInZelleA1)
TagWertInZelleA1 = "<tag>" & WertInZelleA1 & "</tag>"
PfadDesWorkbooks = ActiveWorkbook.Path
MsgBox (PfadDesWorkbooks)
Set FSO = CreateObject("Scripting.FileSystemObject")
Set XMLFile = FSO.CreateTextFile(PfadDesWorkbooks & "\testfile.txt", True)
XMLFile.WriteLine (TagWertInZelleA1)
XMLFile.Close
End Sub
Den Rest (Programmablaufsteuerung usw.) kannst Du Dir in der Hilfe zum VBA selbst erarbeiten.
viele Grüße
Axel
Hallo Axel!
Wow! Respekt! :-) Danke dir für die schnelle und kompetente Hilfe!!!!!!!! :-)
Viele Grüße
Lars