Code beim Schließen der Anwendung ausführen

Beim Öffnen einer Access-Anwendung haben Sie verschiedene Möglichkeiten, Code auszuführen – Sie können ein Formular anzeigen, das beim Öffnen Code ausführt, das AutoExec-Makro nutzen, um eine Prozedur aufzurufen oder sogar das Ribbon dafür instrumentalisieren. Wenn es jedoch um Code geht, der beim Beenden der Anwendung ausgeführt werden soll, finden wir keine offiziell dafür vorgesehene Technik. Allerdings gibt es einen Trick, um doch noch VBA-Code auszuführen, wenn die Access-Anwendung durch den Benutzer geschlossen wird.

Code beim Starten der Anwendung ausführen

Wie Sie Code ausführen, wenn der Benutzer die Datenbank öffnet, haben wir bereits in drei Beiträgen gezeigt. Das gelingt auf folgende Arten:

  • Mit dem Autostart-Makro: Code beim Öffnen der Anwendung: AutoExec (www.access-im-unternehmen.de/1367)
  • Mit dem Startformular: Code beim Öffnen der Anwendung: Formular (www.access-im-unternehmen.de/1368)
  • Und es gelingt sogar von einem Ribbon aus, das beim Start angezeigt wird: Code beim Öffnen der Anwendung: Ribbon (www.access-im-unternehmen.de/1369)

Code beim Schließen der Anwendung ausführen

Wenn es um das Ausführen von Code beim Schließen einer Anwendung geht, finden wir allerdings wesentlich weniger Möglichkeiten.

Auch hier können wir schon vorher sagen: Es gibt kein spezielles Ereignis etwa für die Datenbank, das Sie nutzen können, um Code beim Schließen der Datenbank auszuführen.

Stattdessen behelfen wir uns mit einem Trick. Dieser sieht kurzgefasst folgendes vor:

  • Wir öffnen beim Starten ein Formular, das wir aber gleich wieder ausblenden.
  • Diesem Formular fügen wir eine Ereignisprozedur für das Ereignis Beim Entladen hinzu.
  • Wenn der Benutzer nun die Anwendung schließen will, muss zuvor das noch offene, aber ausgeblendete Formular geschlossen werden.
  • Das Schließen des Formulars erfolgt automatisch, wenn die Datenbank geschlossen wird, was nach sich zieht, dass auch die Beim Entladen-Prozedur des Formulars noch ausgeführt wird.

Beim Schließen-Code Schritt für Schritt

Schauen wir uns im Detail an, was nötig ist, um beim Schließen der Datenbank VBA-Code auszuführen.

Die erste Aktion ist das Erstellen eines Formulars, das direkt beim Start der Anwendung geöffnet und ausgeblendet wird. Dieses Formular nennen wir frmStart und es enthält keinerlei Elemente – das ist auch nicht nötig, da der Benutzer dieses nie zu Gesicht bekommt.

Die erste Frage ist: Wie sorgen wir dafür, dass das Formular direkt nach dem Start ausgeblendet wird Im Gegensatz zu Steuerelementen finden wir in den Formulareigenschaften keine Eigenschaft namens Sichtbar, also müssen wir das Formular per VBA ausblenden. Das erledigen wir so früh wie möglich, damit das Formular noch nicht einmal aufblitzt. Welche ist die erste Ereignisprozedur, wo wir diesen Schritt durchführen können

Um das herauszufinden, haben wir für die in Frage kommenden Ereigniseigenschaften jeweils eine leere Ereignisprozedur angelegt und diese mit einem Haltepunkt versehen. Das Ergebnis ist, dass das Ereignis Beim Öffnen als erstes ausgelöst wird (siehe Bild 1).

Ermitteln der ersten Prozedur beim Öffnen eines Formulars

Sie haben das Ende des frei verfügbaren Textes erreicht. Möchten Sie ...

TestzugangOder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

Schreibe einen Kommentar