ACC: Formulare/Berichte/Abfragen aus anderer MDB verwenden

Problembeschreibung

Wie kann ich in einer Access-Datenbank Objekte einer anderen Access-Datenbank (MDB) verwenden, z.B. Berichte oder Formulare öffnen oder Abfragen ausführen?

Lösung

Zum Öffnen von Formularen und Berichten aus einer anderen MDB gehen Sie folgendermaßen vor:

In der externen Datenbank, in der sich das gewünschte Objekt befindet, schreiben Sie in ein Standardmodul eine VBA-Funktion, die das Objekt öffnet. z.B.
   Public Function fct_oeffnen()
DoCmd.OpenForm "Name_des_Formulares"
End Function
In der aktuellen d.h. aufrufenden Datenbank öffnen Sie ein beliebiges VBA-Modul und wählen den Menüpunkt EXTRAS - VERWEISE. Dort klicken Sie auf die Schaltfläche "Durchsuchen" und wählen die externe MDB aus, auf die Sie zugreifen möchten.

Wenn auf diese Art ein Verweis auf eine andere MDB gesetzt ist, können Sie auf deren Funktionen zugreifen, die wie o.a. in Standardmodulen und mit Public-Anweisung deklariert wurden, als stünden sie in der aktuellen Datenbank. D.h. Sie können das externe Formular öffnen, indem Sie die o.a. Funktion in VBA aufrufen: fct_oeffnen

Für den Zugriff auf Abfragen einer fremden MDB gibt es noch andere Varianten:

Erstellen Sie in der aktuellen Datenbank eine neue Abfrage (vorerst ohne Datenherkunft).
Lassen Sie sich die Eigenschaften der (noch völlig leeren) Abfrage anzeigen (z.B. per Menü ANSICHT - EIGENSCHAFTEN)

In der Eigenschaft "Quelldatenbank" können Sie nun Pfad und Name einer anderen Access-Datenbank angeben, auf deren Tabellen und Abfragen Sie zugreifen möchten.

Sie können auch per Abfragesprache SQL auf eine Abfrage einer anderen Datenbank zugreifen.
Das kann z.B. für eine Auswahlabfrage so aussehen:

SELECT Externe_Abfrage.* FROM Externe_Abfrage IN 'c:\...\Externe.mdb';

Eigenschaften

Artikelnummer: 508923 – Letzte Überarbeitung: 09.11.2004 – Revision: 1

Feedback