window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-TCJTE9L38H');

XML exportieren per VBA

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Im Artikel XML: Austausch mit Access-Bordmitteln haben wir gezeigt, wie Sie die Daten einer Access-Tabelle oder auch die Daten mehrerer verknüpfter Access-Tabellen in ein XML-Dokument exportieren können. Möglicherweise möchten Sie für einen solchen Export nicht immer den Export-Assistenten bemühen. Deshalb haben wir uns angesehen, wie Sie den Export per VBA durchführen können.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1903_XMLExportierenPerVBA.accdb.

Exportieren per VBA-Methode

Für den Export der Daten aus Tabellen oder Abfragen stellt Access die Methode Export-XML des Application-Objekts bereit. Diese Methode hat die folgenden Pflichtparameter (siehe Bild 1):

Aufruf der Methode ExportXML des Application-Objekts

Bild 1: Aufruf der Methode ExportXML des Application-Objekts

  • ObjectType: Einer der Werte acExportForm, acExportFunction, acExportQuery, acExportReport, acExportServerView, acExportStoredProcedure oder acExportTable. Wir interessieren uns hauptsächlich für den Export von Tabellen, also verwenden wir acExportTable als Wert des ersten Parameters. Wenn Sie beispielsweise das Ergebnis einer Abfrage exportieren wollen, verwenden Sie den Parameterwert acExportQuery.
  • DataSource: Gibt den Namen des zu exportierenden Objekts an, in unserem Fall also etwa den Namen einer Tabelle oder Abfrage.
  • DataTarget: Gibt den Namen der zu erstellenden Datei an. Bei diesem Parameter handelt es sich zwar um einen optionalen Parameter, aber wenn Sie ihn weglassen, liefert Access beim Aufruf von ExportXML eine Fehlermeldung (Ungültige Parameter für ExportXML).

Damit können wir bereits den ersten Test starten und die folgende Anweisung im Direktbereich des VBA-Editors absetzen:

Application.ExportXML acExportTable, "tblKategorien", CurrentProject.Path & "\tblKategorien.xml"

Wir wollen also ein Element des Typs acExportTable exportieren, das den Namen tblKategorien aufweist.

Für die Zieldatei haben wir mit CurrentProject.Path das Verzeichnis der aktuellen Datenbank ermittelt und den Dateinamen tblKategorien.xml angegeben.

Das Ergebnis des Exports finden Sie in Bild 2. Hier ist anzumerken, dass die ExportXML-Anweisung eventuell vorhandene Dateien gleichen Namens ohne Rückfrage überschreibt.

Export der Tabelle tblKategorien (gekürzte Fassung)

Bild 2: Export der Tabelle tblKategorien (gekürzte Fassung)

Die exportierte XML-Datei unterscheidet sich nicht von einer mit dem Export-Assistenten exportieren Tabelle.

Weitere Parameter von ExportXML

Die Methode stellt noch weitere Parameter bereit, die weitgehend die Optionen des Dialogs XML exportieren und des Dialogs zur Anzeige der erweiterten Einstellungen des XML-Exports wiedergeben:

  • SchemaTarget: Wenn Sie eine Schema-Datei erzeugen lassen wollen, geben Sie hier den Namen der Schema-Datei an. Im Dialog XML exportieren erledigen Sie das einfach durch Anhaken der Option Schema der Daten (XSD) – siehe Bild 3. Den Namen geben Sie in den erweiterten Eigenschaften unter Schema ein.
  • Der Dialog XML exportieren

    Bild 3: Der Dialog XML exportieren

    Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

    Testzugang

    eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

    diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar