VBA für Access

Das Objektmodell von Access: Objekte in der Access-Datei auflisten

∅ 3.4 / 6 Bewertungen

Objekte in der Access-Datei auflisten

Wie kann ich alle Objekte auflisten, die in der Access-Datenbank oder im Access-Projekt gespeichert sind?

Dieses Formular zeigt alle Formulare im Debug-Fenster an

Public Sub AlleFormulare
Dim aobFormular As AccessObject
For Each aobformular In Application.CurrentProject.AllForms
Debug.Print aobFormular.name
Next
End Sub 

Das Application-Objekt enthält ab Access 2000 zwei Eigenschaften, die den Zugriff auf Objekte innerhalb der Access-Datei ermöglicht. Dabei wird zwischen Datenobjekten (Tabellen, Abfrage...) und sonstigen Objekten (Formulare, Berichte...) unterschieden.

Die Datenobjekte erhält man, indem man von der CurrentData-Eigenschaft des Application-Objekts ausgeht und dann eine der folgenden Auflistungen verwendet:

AllTables: Alle Tabellen

AllQueries: Alle Abfragen (nur Access-Datenbanken)

AllViews: Alle Sichten (nur Access-Projekte)

AllStoredProcedures: Alle gespeicherten Prozeduren (nur Access-Projekte)

AllDatabaseDiagrams: Alle Datenbankdiagramme (nur Access-Projekte)

Alle anderen Objekte erhält man, indem man von der CurrentProject-Eigenschaft des Application-Objekts ausgeht und dann eine der folgenden Auflistungen verwendet:

AllForms: Alle Formulare

AllReports: Alle Berichte

AllMacros: Alle Makros

AllModules: Alle Module

AllDataAccessPages: Alle Datenzugriffsseiten

Egal welche Auflistung verwendet wird: Alle enthalten Objekte der Klasse AccessObject. Diese unterstützt im Wesentlichen nur Name- und Type-Eigenschaften.

Die aus früheren Versionen bekannten Container- und Document-Objekte der DAO werden aus Kompatibilitätsgründen in Access-Datenbanken weiterhin unterstützt.