Projektanfrage

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unter-stützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! oder rufen Sie uns einfach an.

   
      Referenzen 

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   
     Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
   

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der Lösungs-
 findung?

  Nutzen Sie unser Anfrageformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
R
O
J
E
K
T
A
N
F
R
A
G
E
   

XML Datei per VBA erzeugen

In diesem Beispiel zeigen wir Ihnen, wie XML Dateien per VBA erzeugt werden können.

Als Ausgangsdatei dient eine kleine Adressliste, die als XML-Datei abgespeichert werden soll, siehe Abbildung.


Abb: Adressliste

Der VBA-Code soll nun ab Zeile 6 die Einträge Vorname, Nachname und Ort mit den entsprechenden Tags in eine XML-Datei schreiben. Die XML-Datei soll wie folgt aufgebaut sein:

 

Erfassen Sie dazu in einem Code-Modul den folgenden VBA-Code:

Sub XML_Export()
'*****************************************
'** Excel-Inside Solutions - (C) 2015                    *
'*****************************************
'** Dimensionierung der Variablen
Dim strFile As String, Text As String
Dim lngRow, lngCol As Long
Dim varShow
'** Errorhandling
On Error GoTo Fehlermeldung
'** XML-Dateipfad und -Name festlegen
strFile = ThisWorkbook.Path & "\test.xml"
'** Datei (ASCII) öffnen
Open strFile For Output As #1
'** XML-Header schreiben
Print #1, "<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?> "
Print #1, "<daten xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">"
'** Mit Schleife die ersten 3 Spalten der Tabelle schreiben
For lngRow = 6 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
'** Schreiben Datensatz-Beginn
 Print #1, "<Adresse ID=""" & lngRow - 5 & """>" 'Tag Anfang
 
 '** Schreiben der Felder (Spalten A-C)
 Print #1, "<Vorname>" & Cells(lngRow, 1) & "</Vorname>"
 Print #1, "<Nachname>" & Cells(lngRow, 2) & "</Nachname>"
 Print #1, "<Ort>" & Cells(lngRow, 3) & "</Ort>"
 
 '** Schreiben Datensatz-Ende
 Print #1, "</Adresse>"
Next lngRow
'** Daten-Tag schließen
Print #1, "</daten>"
'** XML-Datei schließen
Close #1
'** Aufruf des Editors mit der geschriebenen xml-Datei
varShow = Shell(Environ("windir") & "\notepad.exe " & strFile, 1)
Exit Sub
'** Errorhandling
Fehlermeldung:
Close #1
 MsgBox "Fehler-Nr.: " & Err.Number & vbNewLine & vbNewLine _
 & "Beschreibung: " & Err.Description _
 , vbCritical, "Fehler"
End Sub

Die XML-Daten-Struktur wird mit diesem VBA-Code erzeugt und in der Datei "test.xml" im gleichen Verzeichnis abgelegt, in der sich die Excel-Datei befindet.

Das Ergebnis sieht wie folgt aus:

 
Abb: XML-Datenstruktur

Hinweis:

Dieser Beispielcode wandelt Umlautet nicht nicht in einen XML-Konformen String um. Dies muss zusätzlich implementiert werden.

Die Beispieldatei kann über den folgenden Link heruntergeladen werden.

 

Import von XML-Dateien

Nun haben Sie erfahren, wie sie per VBA ganz einfach XML Dateien exportieren können. Um diese erzeugen XML-Dateien wieder zu importieren, also einzulesen gehen Sie wie folgt vor:

  1. Öffnen Sie den XML-Importbefehl über das Menü Daten | Verbindungen | Externe Daten abrufen | Aus anderen Quellen | Vom XML-Datenimport
  2. Öffnen Sie in dem Import "Datenquelle auswählen" unsere exportierte Datei Text.xml oder jede andere beliebige XML-konforme Datei
  3. Nach einem Klick auf die Schaltfläche Öffnen wird die XML-Datei importiert und in eine Excel-Tabelle eingelesen, siehe Abbildung.


Abb. importierte XML-Datei

Wie Sie sehen, verfügt Excel über eine komfortable XML-Importfunktion. Diese prüft beim Importvorgang die XML-Datei und gibt entsprechende Fehlermeldungen aus, falls die zu importierende Datei nicht konsistent ist.

 

   

Relevante Artikel

  • Add-In im Netzwerk verwenden

      Normalerweise werden Add-Ins lokal installiert. Excel schlägt als Standardordner zur Ablage von Add-Ins einen lokalen Ordner vor, welcher abhängig von der verwendeten Office-Version ist. Unter Excel 2003...

  • Sicherheitseinstellungen für Makros

    Nachfolgend erhalten Sie eine Übersicht über die Einstellmöglichkeiten der Makrosicherheit in den unterschiedlichen Excel-Versionen: Die jeweiligen Einstellungen können Sie wie folgt verändern:...

  • UserName ermitteln

    Dieses Makro liest den UserName (Benutzernamen) des eingeloggten Benutzers aus. Dies ist für Dateien/Programme interessant, die nur für bestimmte Benutzer freigegeben werden sollen. Damit lässt sich eine...

  • CPU Informationen auslesen

    Mit Hilfe des untenstehenden VBA-Codes können verschiedene CPU Informationen ausgelesen werden. Folgende Informationen werden im Direktfenster ausgegeben: 1. die Geräte-ID2. die...

  • Benutzerdefinierte Funktion zum Umwandeln von Umlauten

    Dieses Beispiel zeigt, wie Sie mit Hilfe einer benutzerdefinierten Funktion beliebige Umlaute umwandeln können. Zur Erstellung der benutzerdefinierten Funktion (UDF) gehen Sie bitte wie folgt vor:...

   
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Bestätigung erklären Sie sich mit der Verwendung von Cookies auf Excel-Inside Solutions einverstanden.
Weitere Informationen Ok