Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Individuelle Optionen je Datenbank

Wenn Sie im Optionen-Dialog Anpassungen vornehmen, gelten diese fr alle von da an geffneten Datenbanken, bis Sie die Einstellungen wieder rckgngig machen. Wenn Sie Optionen nur fr eine einzige Datenbankanwendung ndern mchten, finden Sie in vorliegendem Beitrag eine Lsung.

Beispieldatenbank

Im Beispiel soll die Schriftart und die Schriftgre in Datenblttern, also beispielsweise in Tabellen und Abfragen, gendert werden. Die Beispieldatenbank enthlt eine Tabelle, um die nderung zu beobachten, ein Formular namens frmOptionenEinstellen, das Autoexec-Makro sowie ein Modul namens mdlOptionenEinstellen, in dem zwei globale Variablen deklariert werden.

Optionen speichern und anpassen

Um die bestehenden Optionen der Datenbank zu speichern, verwenden Sie die GetOptions-Methode des Application-Objekts. Die Werte sollen in ffentlichen Variablen gespeichert werden. Dazu verwenden Sie ein Standardmodul, in das Sie die folgenden beiden Anweisungen einfgen:

Public DefaultFontName As String

Public DefaultFontSize As Integer

Um die Optionen beim Aufrufen der Datenbank zu ndern, verwenden Sie das Autoexec-Makro wie in Abbildung 1. Das Autoexec-Makro ffnet das Formular frmOptionenEinstellen und stellt den Fenstermodus auf Ausgeblendet ein, so dass das Formular direkt unsichtbar ist.

Abbildung 1: Das Autoexec-Makro ffnet das Formular frmOptionenEinstellen.

Das Formular selbst enthlt keinerlei Steuerelemente. Es soll lediglich beim Laden die Optionen anpassen und beim Entladen den alten Stand wiederherstellen. Dazu legen Sie die folgenden beiden Prozeduren fr die Ereigniseigenschaften Beim Laden und Beim Entladen an.

Private Sub Form_Load()

    DefaultFontName = Application.GetOption("Default Font Name")

    DefaultFontSize = Application.GetOption("Default Font Size")

    Application.SetOption "Default Font Name", "Tahoma"

    Application.SetOption "Default Font Size", 8

End Sub

Private Sub Form_Unload(Cancel As Integer)

    Application.SetOption "Default Font Name", DefaultFontName

    Application.SetOption "Default Font Size", DefaultFontSize

End Sub

Der Clou mit dem unsichtbaren Formular

Der Grund fr die Verwendung eines Formulars fr die Durchfhrung der beschriebenen Aktionen liegt darin, dass Sie mit dem Autoexec-Makro zwar eine Prozedur aufrufen knnten, um die Optionen beim ffnen der Datenbank auf die gewnschten Werte zu ndern. Leider verfgt Access aber ber kein Makro oder eine Ereigniseigenschaft, die beim Schlieen der Datenbank ausgefhrt wird. Ein Formular wird aber beim Schlieen der Datenbank ebenfalls geschlossen und lst dabei noch die Ereigniseigenschaft Beim Entladen aus. Die Befehle zum Wiederherstellen der alten Optionswerte knnen Sie daher gut an dieser Stelle unterbringen.

Der Haken an der Sache ist, dass diese Vorgehensweise nicht funktioniert, wenn die Datenbank durch einen Computerausfall oder hnliches beendet wird. Dabei wird das Formular natrlich nicht mehr ordnungsgem entladen.

© 2003-2015 André Minhorst Alle Rechte vorbehalten.