Formulare [basics]: Forms öffnen mit DoCmd.OpenForm

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Access-Anwendungen brauchen Formulare für die Interaktion mit dem Benutzer. Aber wie öffnet man ein solches Formular überhaupt Klar, das funktioniert zwar mit einem Doppelklick auf den Namen des jeweiligen Formulars im Navigationsbereich. Aber diesen sollten der Benutzer im Optimalfall überhaupt nicht sehen, denn sonst könnte er auch direkt auf die Inhalte von Tabellen zugreifen – und dazu soll er eigentlich die an die Tabellen gebundenen Formulare nutzen. Wir müssen also eine alternative Möglichkeit schaffen, damit der Benutzer die Formulare öffnen kann. Diese soll möglichst flexibel sein und es auch einmal erlauben, Informationen wie einen Filter zu übergeben oder ob das zu öffnende Formular einen neuen, leeren Datensatz anzeigen soll. Das Schweizer Taschenmesser für diesen Fall ist die Methode OpenForm der DoCmd-Klasse. Damit können wir Formulare in verschiedenen Ansichten öffnen, Parameter übergeben, Filter setzen oder auch den Datenbearbeitungsmodus einstellen.

Beispieldatenbank

Die Beispiele dieses Artikels findest Du in der Datenbank FormulareBasics_FormulareOeffnenPerDoCmdOpenForm.accdb.

Formulare öffnen

Das Öffnen von Formularen ist eine essenzielle Aktion in Access-Datenbanken, in denen der Benutzer auf irgendeine Weise mit den Daten interagieren soll. Um dies zu erledigen, gibt es die folgenden Möglichkeiten:

  • Doppelklick auf den Formularnamen im Navigationsbereich
  • Angabe eines Formulars für die Option Formular anzeigen in den Access-Optionen
  • Öffnen eines Formulars mit dem Makrobefehl ÖffnenFormular
  • Öffnen eines Formulars mit der VBA-Methode DoCmd.OpenForm

Doppelklick auf den Formularnamen

Die erste Methode fällt aus den in der Einleitung genannten Gründen aus – der Benutzer sollte den Navigationsbereich normalerweise gar nicht zu Gesicht bekommen.

Startformular in den Optionen festlegen

Die zweite Methode ist gut geeignet, wenn Du ein Startformular zur Anzeige eines Splash Screens beim Öffnen anzeigen möchtest oder Du ein Formular mit den Funktionen der Datenbankanwendung anzeigen möchtest, das wiederum Schaltflächen zum Öffnen weiterer Formulare zum Bearbeiten der Daten enthält.

Vielleicht hat Deine Anwendung auch ein Formular, das so oft verwendet wird, dass Du es standardmäßig direkt beim Öffnen anzeigen möchtest. Der einzige Nachteil dieser Methode ist, dass Du hier nur den Formularnamen angeben kannst, aber nicht die Optionen, die Du im Makrobefehl ÖffnenFormular oder in der Methode DoCmd.OpenForm findest.

Wenn Du diese Optionen beim Starten nutzen möchtest, kannst Du aber auch ein Makro definieren, dass beim Start ausgelöst wird und die Aktion ÖffnenFormular nutzt. Dieses Makro muss den Namen AutoExec tragen, damit es automatisch ausgeführt wird. Oder Du rufst in diesem Makro die Aktion Ausführen Code auf und übergibst den Namen einer VBA-Funktion, die wiederum die Methode DoCmd.OpenForm ausführt und so das gewünschte Formular öffnet. Das sollen allerdings Themen weiterer Artikel sein – hier konzentrieren wir uns auf den DoCmd.OpenForm-Befehl.

Öffnen per Ribbon-Schaltfläche

Die DoCmd.OpenForm-Methode können wir beispielsweise auch nutzen, wenn wir unserer Anwendung ein Ribbon mit Schaltflächen hinzufügen. Den dadurch ausgelösten Prozeduren können wir ebenfalls die Methode DoCmd.OpenForm hinzufügen, um per Ribbon-Schaltfläche Formulare zu öffnen.

Makro oder VBA

Die Makroaktion ÖffnenFormular und der VBA-Befehl DoCmd.OpenForm bieten grundsätzlich genau die gleichen Möglichkeiten. Die Parameter der Makroaktion sehen wir in Bild 1. Um diese Ansicht zu erhalten, legen wir mit Erstellen|Makros und Code|Makro ein neues Makro an und wählen als Aktion ÖffnenFormular aus.

Die Makroaktion ÖffnenFormular

Bild 1: Die Makroaktion ÖffnenFormular

Hier sehen wir die Parameter, die wir in ähnlicher Form auch in der Parameterliste der VBA-Methode DoCmd.OpenForm vorfinden. Um diese einzusehen, öffnen wir den VBA-Editor und wechseln dort zum Direktbereich. Das gelingt vom Access-Hauptfenster am einfachsten mit der Tastenkombination Strg + G. Geben wir hier DoCmd.OpenForm gefolgt von einem Leerzeichen ein, erhalten wir die Parameterliste aus Bild 2. Schauen wir uns die Parameter der beiden Varianten in der Übersicht an:

Der VBA-Befehl DoCmd.OpenForm

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

Testzugang

eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar