Datenbank schließen mit Rückfrage
Es gibt viele Gründe für ein Ereignis, das beim Schließen einer Datenbankanwendung ausgelöst wird, etwa eine Abfrage, ob der Benutzer die Anwendung auch wirklich beenden möchte, oder eine Funktion, die mit dem Schließen der Anwendung automatisch einen Log-Eintrag erstellt, dass der Benutzer die Anwendung beendet hat. Eine hinlänglich bekannte und leicht zu realisierende Variante baut auf einem Formular auf, das beim Start der Anwendung geöffnet und sofort unsichtbar geschaltet wird. Diesem Formular gibt man den beim Schließen der Anwendung auszuführenden Code im Ereignis Beim Entladen mit. Der Clou ist, das Access vor dem Beenden alle Formulare ordnungsgemäß schließt – natürlich auch die unsichtbaren.
Um dies nachzuvollziehen, erstellen Sie einfach ein Formular namens frmUnsichtbaresFormular, dem Sie für das Ereignis Beim Entladen die Routine aus Listing 1 hinzufügen.
Private Sub Form_Unload(Cancel As Integer)
MsgBox "Unsichtbares Formular wird entladen"
End Sub
Anschließend erstellen Sie ein Makro namens AutoExec und fügen zu diesem die Aktion Öffnen- Formular mit den Parametern aus Bild 1 hinzu. Nun müssen Sie nur noch die Datenbank schließen und wieder öffnen, damit das Formular im Hintergrund geladen ist. Wenn Sie die Anwendung nun erneut schließen, erscheint das Meldungsfenster aus dem Ereignis Beim Entladen.