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):
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.
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.
Bild 3: Der Dialog XML exportieren
Unser exklusives Angebot für Dich!
(Das Abo ist jederzeit monatlich kündbar)
Hier geht’s weiter →Die ersten 4 Wochen kostenlos testen – voller Zugriff auf alle Artikel, vollständigen Code und Beispieldatenbanken. Kein Risiko: Wenn es nicht passt, kündigst Du einfach innerhalb der ersten vier Wochen.
Oder hast Du eine konkrete Frage zu Deiner eigenen Access-Anwendung?
Vielleicht stellt Deine Anwendung Dich vor eine Herausforderung, zu der Du bisher keine Lösung findest. Schlechte Performance, kein ausreichender Zugriffsschutz, Du bist unsicher über Dein Datenmodell oder Dein Code liefert unerklärliche Fehler?
In unserem kostenlosen Access-Audit schaut sich André Minhorst persönlich gemeinsam mit Dir Deine Lösung per Zoom an – und zeigt Dir, wo Datenmodell, VBA-Code, Ergonomie und Sicherheit Optimierungspotenzial bieten.
Jetzt kostenloses Access-Audit anfordern →![Access [basics]](https://access-basics.de/wp-content/uploads/2021/02/logo400.png)


