Optionen per VBA für Access 2019

In einem früheren Beitrag namens „Access-Optionen gestern und heute“ haben wir uns einmal angesehen, welche Access-Optionen es gibt und wie Sie diese per VBA einstellen können – unter anderem mit den Methoden SetOption oder über die Eigenschaften des Database-Objekts der aktuell geöffneten Datenbank. Damals ging es noch um den Optionen-Dialog von Access 2003, der sich mittlerweile stark verändert hat. Um eine aktualisierte Version dieses Beitrags soll es in diesem Beitrag gehen. Grundlage ist dabei die Access 365-Version von Mitte 2021.

Video passend zu diesem Artikel:

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Wo findet man die Optionen per VBA?

Bevor wir in die Referenz der Optionen und ihrer VBA-Pendants einsteigen, schauen wir uns an, wie Sie überhaupt Optionen per VBA lesen und schreiben können. Dazu brauchen wir zunächst eine wichtige Unterscheidung: Es gibt Optionen für die Access-Anwendung und für die jeweils geöffnete Datenbank.

Optionen in der Registry

Die Optionen der Access-Anwendung werden in der Registry im Bereich HKEY_CURRENT_USER gespeichert und wirken sich somit nach der Änderung ausschließlich auf die vom aktuellen Benutzer geöffneten Access-Instanzen aus. Diese können wir mit den beiden VBA-Befehlen GetOption und SetOption lesen und schreiben.

Genau genommen finden Sie die Optionen in der Registry unter HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Access\Settings. Die meisten dieser Optionen ändern Sie in der Benutzeroberfläche über die verschiedenen Elemente des Dialogs Access-Optionen, ein paar auch über den Dialog Navigationsoptionen.

Optionen in den Eigenschaften des Database-Objekts

Die Optionen der Access-Datenbank wiederum beziehen sich nur auf die aktuell geöffnete Access-Datenbank. Die meisten davon befinden sich im Dialog Access-Optionen im Bereich Aktuelle Datenbank. Tatsächlich werden die Werte für diese Optionen in der Properties-Auflistung des Database-Objekts der aktuellen Datenbank gespeichert. Sie können diese mit folgender Anweisung einstellen:

CurrentDb.Properties("<Eigenschaftsname>") = <Eigenschaftswert>

Eine nicht vorhandene Eigenschaft müssen Sie zuvor noch anlegen. Mit folgender Anweisung fragen Sie den Wert im Direktbereich von Access ab:

Debug.Print CurrentDb.Properties("<Eigenschaftsname>")

Optionen in weiteren Bereichen der Registry

Einige Optionen, etwa die für alle Office-Anwendungen gültigen Optionen, befinden sich in anderen Bereichen der Registry. Für diese gibt es keine einfache VBA-Anweisung wie SetOption oder GetOption. Um diese zu lesen oder zu schreiben, benötigen Sie spezielle Befehle, die wir in einem weiteren Beitrag namens Registry per VBA, 32- und 64-Bit (www.access-im-unternehmen.de/1323) untersuchen.

Access-Optionen und ihre VBA-Pendants

Damit steigen wir gleich in die Optionen ein, die Sie über die Benutzeroberfläche anpassen können, und schauen uns an, wie Sie diese unter VBA einstellen können.

Wir haben die Eigenschaften jeweils in den Screenshots der Dialoge nummeriert. Sie finden zu den Nummern die deutsche Bezeichnung (in Klammern), die englische Bezeichnung, den Speicherort der Eigenschaft (Registry/Database oder im Falle von anderen Speicherorten in der Registry den entsprechenden Zweig) und die möglichen Werte.

Optionen des Bereichs Allgemein

Gleich im ersten Bereich des Optionen-Dialogs von Access finden wir einige Optionen, die sich tatsächlich nicht von Access aus per VBA steuern lassen (siehe Bild 1).

Optionen des Bereichs Allgemein

Bild 1: Optionen des Bereichs Allgemein

  • 1 (Live-Vorschau aktivieren): LivePreview, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 2 (QuickInfo-Format): nicht gefunden
  • 3 (Tastenkombinationen in QuickInfos anzeigen): nicht gefunden
  • 4 (Hardwaregrafikbeschleunigung deaktivieren): nicht gefunden
  • 5 (Standarddateiformat für leere Datenbank): Default File Format, Registry, Access 2000: 9, Access 2002 – 2003: 10, Access 2007 – 2019, Access 365: 12
  • 6 (Standarddatenbankordner): Default Database Directory, Registry, Verzeichnis im String-Format
  • 7 (Sortierreihenfolge bei neuer Datenbank): New Database Sort Order, Registry, verschiedene Werte, zum Beispiel 2052 (Allgemein – Vorversion) oder 1033 (Deutsches Telefonbuch)
  • 8 (Benutzername): Office-Einstellung
  • 9 (Initialen): Office-Einstellung
  • 10 (Immer diese Werte verwenden, unabhängig von der Anmeldung bei Office): Office-Einstellung
  • 11 (Office-Hintergrund): Office-Einstellung
  • 12 (Office-Design): Office-Einstellung

Optionen des Bereichs Aktuelle Datenbank

Die Elemente im Bereich Aktuelle Datenbank des Optionen-Dialogs von Access sehen Sie in Bild 2.

Optionen des Bereichs Aktuelle Datenbank

Bild 2: Optionen des Bereichs Aktuelle Datenbank

Hier sind die Schrauben, an denen Sie mit VBA drehen können:

  • 1 (Anwendungstitel): AppTitle, Database, Anwendungstitel im String-Format, wird bei erster Änderung erstellt
  • 2 (Anwendungssymbol): AppIcon, Database, Pfad zum Icon im String-Format, wird bei erster Änderung erstellt
  • 3 (Als Formular- und Berichtssymbol verwenden): UseAppIconForFrmRpt, Database, Boolean, Neustart erforderlich
  • 4 (Formular anzeigen): StartupForm, Database, Formularname im String-Format, wird bei erster Änderung erstellt, Neustart erforderlich
  • 5 (Webanzeigeformular): im Desktop-Modus nicht verfügbar
  • 6 (Statusleiste anzeigen): StartUpShowStatusBar, Database, Boolean, Neustart erforderlich
  • 7 (Dokumentfensteroptionen): UseMdiMode, Database, 0: Dokumente im Registerkartenformat, 1: Überlappende Fenster, Neustart erforderlich
  • 8 (Dokumentregisterkarten anzeigen): ShowDocumentTabs, Database, Boolean-Format, Neustart erforderlich
  • 9 (Access-Spezialtasten verwenden): AllowSpecialKeys, Database, Boolean, Neustart erforderlich
  • 10 (Beim Schließen komprimieren): Auto Compact, Database, 1: Ja, 0: Nein, Neustart erforderlich
  • 11 (Beim Speichern personenbezogene Daten aus Dateieigenschaften entfernen): Remove Personal Information, Database, 1: Ja, 0: Nein, wird bei erster Änderung erstellt, Neustart erforderlich
  • 12 (Steuerelemente mit Windows-Design auf Formularen verwenden): Themed Form Controls, Database, 1: Ja, 2: Nein
  • 13 (Layoutansicht aktivieren): DesignWithData, Database, Boolean
  • 14 (Entwurfsänderungen für Tabellen in der Datenblattansicht aktivieren): AllowDatasheetSchema, Database, Boolean
  • 15 (Auf abgeschnittene Zahlenfelder prüfen): CheckTruncatedNumFields, Database, Boolean
  • 16 (Bildeigenschaften-Speicherformat): Picture Property Storage Format, Database, 0: Quellbildformat beibehalten (kleinere Dateigröße), 1: Alle Bilddaten in Bitmaps konvertieren (mit Access 2003 und früher kompatibel)
  • 17 (Navigationsbereich anzeigen): StartUpShowDBWindow, Database, Boolean
  • 18 (Name des Menübands): CustomRibbonID, Database, Name des Ribbons als String, wird bei erster Änderung erstellt
  • 19 (Kontextmenüleiste): StartupShortcutMenuBar, Database, Name der Kontextmenüleiste, wird bei erster Änderung erstellt
  • 20 (Vollständige Menüs zulassen): AllowFullMenus, Database, Boolean-Wert
  • 21 (Standardkontextmenüs zulassen): AllowShortcutMenus, Database, Boolean-Wert
  • 22 (Informationen zu Objektnamenautokorrektur nachverfolgen): Track Name AutoCorrect Info, Database, 0: Nein, 1: Ja, wird bei erster Änderung erstellt
  • 23 (Objektnamenautokorrektur ausführen): Perform Name AutoCorrect, Database, 0: Nein, 1: Ja
  • 24 (Änderungen für Objektnamenautokorrektur protokollieren): Log Name AutoCorrect Changes, Database, 0: Nein, 1: Ja, wird bei erster Änderung erstellt
  • 25 (Liste anzeigen von Werten in … Lokalen indizierten Feldern): Show Values in Indexed, Database, 0: Nein, 1: Ja
  • 26 (Liste anzeigen von Werten in … Lokalen nicht indizierten Feldern): Show Values in Non-Indexed, Database, 0: Nein, 1: Ja
  • 27 (Liste anzeigen von Werten in … ODBC-Feldern): Show Values in Remote, Database , 0: Nein, 1: Ja
  • 28 (Keine Listen anzeigen, wenn mehr als diese Anzahl von Zeilen gelesen wird): Show Values Limit, Database, Zahl
  • 29 (Cacheformat verwenden, das mit Microsoft Access 2010 und höher kompatibel ist): Use Microsoft 2007 compatible cache, Database, 0: Nein, 1: Ja
  • 30 (Cache beim Schließen leeren): Clear Cache on Close, Database, 0: Nein, 1: Ja
  • 31 (Nie zwischenspeichern): Never Cache, Database, 0: Nein, 1: Ja
  • 32 (Datentyp „Große Ganzzahl“ (BigInt) für verknüpfte/importierte Tabellen unterstützen): Use BigInt for linking and importing data, Database,, 0: Nein, 1: Ja

Optionen des Dialogs Navigations-optionen

Diesen Dialog öffnen Sie entweder über die Schaltfläche Navigationsoptionen… im Bereich Aktuelle Datenbank der Access-Optionen oder über das Kontextmenü des Titels des Navigationsbereichs (siehe Bild 3).

Optionen des Bereichs Navigationsoptionen

Bild 3: Optionen des Bereichs Navigationsoptionen

Hier finden Sie die folgenden Optionen:

  • 1 (Ausblendete Objekte anzeigen): Show Hidden Objects: Registry, 0: Nein, 1: Ja
  • 2 (Systemobjekte anzeigen): Show System Objects: Registry, 0: Nein, 1: Ja
  • 3 (Suchleiste anzeigen): Show Navigation Pane Search Bar, Database, Boolean
  • 4 (Objekte öffnen mit): Database Explorer Click Behavior, Registry, 0: Nein, 1: Ja, wird bei erster Änderung erstellt

Optionen des Bereichs Datenblatt

Der Bereich Datenblatt hält die Optionen aus Bild 4 bereit. Diese bieten die folgenden Möglichkeiten zur Anpassung per VBA:

Optionen des Bereichs Datenblatt

Bild 4: Optionen des Bereichs Datenblatt

  • 1 (Standardgitternetzlinien – Horizontal): Default Gridlines Horizontal, Registry, 0: Nein, 1: Ja, wird bei erster Änderung erstellt
  • 2 (Standardgitternetzlinien – Vertikal): Default Gridlines Vertical, Registry, 0: Nein, 1: Ja, wird bei erster Änderung erstellt
  • 3 (Standardzelleffekt): Default Cell Effect, Registry, 0: Flach, 1: Erhöht, 2: Vertieft, wird bei erster Änderung erstellt
  • 4 (Standardspaltenbreite): Default Column Width, Registry, Breite in Twips, wird bei erster Änderung erstellt
  • 5 (Schriftgrad): Default Font Size, Registry, Zahl, wird bei erster Änderung erstellt
  • 6 (Schriftstärke): Default Font Weight, Registry, 0: Extra dünn, 1: Sehr Dünn, 2: Dünn, 3: Normal, 4: Mittel, 5: Halb Fett, 6: Fett, 7: Sehr Fett, 8: Extra Fett wird bei erster Verwendung erstellt
  • 7 (Unterstrichen): Default Font Underline, Registry, 0: Nein, 1: Ja, wird bei erster Verwendung erstellt
  • 8 (Kursiv): Default Font Italic, Registry, 0: Nein, 1: Ja, wird bei erster Änderung erstellt

Optionen des Bereichs Objekt-Designer

Die Optionen für die Objekt-Designer finden Sie in Bild 5. Und hier sind die enthaltenen Optionen:

Optionen des Bereichs Objekt-Designer

Bild 5: Optionen des Bereichs Objekt-Designer

  • 1 (Standardfeldtyp): Default Field Type, Registry, 0: Kurzer Text, 1: Langer Text, 2: Zahl, 3: Datum/Uhrzeit, 4: Währung, 5: Ja/Nein, 6: Link
  • 2 (Standardtextfeldgröße): Default Text Field Size, Registry, Zahl
  • 3 (Standardzahlenfeldgröße): Default Number Field Size, Registry, 0: Byte, 1: Integer, 2: Long Integer, 3: Single, 4: Double, 5: Decimal, 6: Replikations-ID
  • 4 (Autoindex beim Importieren/Bestellen): Autoindex on Import/Create, Registry, Kommaseparierte Liste der Felder, für die ein Index angelegt werden soll
  • 5 (Schaltfläche “Optionen für Eigenschaften aktualisieren“ anzeigen): Show Property Update Option Buttons, Registry, 0: Nein, 1: Ja
  • 6 (Tabellennamen anzeigen): Show Table Names, Registry, 0: Nein, 1: Ja
  • 7 (Alle Felder ausgeben): Output all Fields, Registry, 0: Nein, 1: Ja
  • 8 (AutoVerknüpfung aktivieren): Enable AutoJoin, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 9 (Schriftart zum Erstellen von Abfragen – Schriftart): Query Design Font Name, Registry, Name als String
  • 10 (Schriftart zum Erstellen von Abfragen – Schriftgrad): Query Design Font Size, Registry, Zahlenwert
  • 11 (SQL Server-kompatible Syntax (ANSI 92) – In dieser Datenbank verwenden): ANSI Query Mode, Database, Boolean
  • 12 (SQL Server-kompatible Syntax (ANSI 92) – Standard für neue Datenbanken): ANSI Query Mode Default, Database, Boolean
  • 13 (Objektmarkierung): Selection Behavior, Registry, 0: Teilweise eingerahmt, 1: Voll eingerahmt
  • 14 (Formularvorlage): Form Template, Registry, Name als String, wird bei erster Änderung angelegt
  • 15 (Berichtsvorlage): Report Template, Registry, Name als String, wird bei erster Änderung angelegt
  • 16 (Immer Ereignisprozeduren verwenden): Always use Event Procedure, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 17 (Fehlerüberprüfung aktivieren): Enable Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 18 (Auf nicht dazugehöriges Bezeichnungsfeld und Steuerelement prüfen): Unassociated Label and Control Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 19 (Auf neue nicht dazugehörige Bezeichnungsfelder prüfen): New Unassociated Label Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 20 (Auf Tastenkombinationsfehler prüfen): Keyboard Shortcut Errors Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 21 (Auf ungültige Steuerelementeigenschaften prüfen): Invalid Control Source Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 22 (Auf allgemeine Berichtfehler prüfen): Common Report Errors Error Checking, Registry, 0: Nein, 1: Ja, wird bei erster Änderung angelegt
  • 23 (Farbe des Fehlerindikators): Error Checking Indicator Color, Registry, Zahlenwert für die Farbe

Optionen des Bereichs Dokumentprüfung

Der Bereich Dokumentprüfung bietet die Optionen aus Bild 6. Die Elemente dieses Bereich finden Sie in einem speziellen Bereich der Registry, nämlich im Zweig HKEY_CURRENT_USER im Ordner SOFTWARE\Microsoft\Shared Tools\Proofing Tools\1.0\Office.

Optionen des Bereichs Dokumentprüfung

Bild 6: Optionen des Bereichs Dokumentprüfung

Der Ordner Office wird erst beim Ändern einer der Optionen erstellt, die einzelnen Optionen werden zum gleichen Zeitpunkt angelegt.

Hier sind die Optionen:

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

den kompletten Artikel im PDF-Format mit Beispieldatenbank

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar