Freigeben über


OpenForm-Makroaktion

Gilt für: Access 2013, Office 2013

Sie können die ÖffnenFormular-Aktion verwenden, um ein Formular in der Formularansicht, Entwurfsansicht, Seitenansicht oder Datenblattansicht zu öffnen. Sie können den Dateneingabe- und den Fenstermodus für das Formular auswählen und die Datensätze einschränken, die das Formular anzeigt.

Einstellung

Die OpenForm-Aktion weist die folgenden Argumente auf.

Aktionsargument

Beschreibung

Formularname

Der Name des zu öffnenden Formulars. Im Feld Formularname im Abschnitt Aktionsargumente des Bereichs Makro-Generator werden alle Formulare in der aktuellen Datenbank angezeigt. Dies ist ein erforderliches Argument. Wenn Sie ein Makro ausführen, das die OpenForm-Aktion in einer Bibliotheksdatenbank enthält, sucht Microsoft Access zuerst in der Bibliotheksdatenbank und dann in der aktuellen Datenbank nach dem Formular mit diesem Namen.

View

Die Ansicht, in der das Formular geöffnet wird. Klicken Sie im Feld Ansicht auf Formular, Entwurf, Druckvorschau, Datenblatt, PivotTable oder PivotChart. Der Standardwert ist Formular.

HINWEIS: Die Einstellung des View-Arguments setzt die Einstellungen der Eigenschaften DefaultView und ViewsAllowed des Formulars außer Kraft. Wenn z. B. die ViewsAllowed-Eigenschaft eines Formulars auf Datenblatt festgelegt ist, können Sie weiterhin die ÖffnenFormular-Aktion verwenden, um das Formular in der Formularansicht zu öffnen.

Filter Name

Ein Filter, der die Datensätze des Formulars einschränkt oder sortiert. Sie können den Namen einer vorhandenen Abfrage oder eines Filters, der als eine Abfrage gespeichert wurde, eingeben. Die Abfrage muss jedoch alle Felder in dem Formular enthalten, das Sie öffnen, oder die OutputAllFields-Eigenschaft muss auf Ja festgelegt sein.

Bedingung

Eine gültige SQL WHERE-Klausel (ohne das Wort WHERE) oder ein Ausdruck, den Access verwendet, um Datensätze aus der dem Formular zugrunde liegenden Tabelle oder Abfrage auszuwählen. Wenn Sie einen Filter mit dem Argument Filter Name auswählen, wendet Access diese WHERE-Klausel auf die Ergebnisse des Filters an. Verwenden Sie den folgenden Ausdruck, um ein Formular zu öffnen und seine Datensätze auf die durch den Wert eines Steuerelements in einem anderen Formular angegebenen zu beschränken: [Feldname] = Formulare![formularname]! [controlname in einem anderen Formular] Ersetzen Sie fieldname durch den Namen eines Felds in der zugrunde liegenden Tabelle oder Abfrage des Formulars, das Sie öffnen möchten. Ersetzen Sie formname und controlname auf einem anderen Formular durch den Namen des anderen Formulars und das Steuerelement auf dem anderen Formular, das den Wert enthält, mit dem Datensätze im ersten Formular übereinstimmen sollen.

HINWEIS: Die maximale Länge des Where Condition-Arguments beträgt 255 Zeichen. Wenn Sie eine komplexere SQL WHERE-Klausel eingeben müssen, die länger ist, verwenden Sie stattdessen die OpenForm-Methode des DoCmd-Objekts in einem vba-Modul (Visual Basic for Applications). Sie können SQL WHERE-Klauselanweisungen in VBA mit bis zu 32.768 Zeichen eingeben.

Datenmodus

Der Dateneingabemodus für das Formular. Dies gilt nur für Formulare, die in der Formularansicht oder in der Datenblattansicht geöffnet werden. Klicken Sie auf Hinzufügen (der Benutzer kann neue Datensätze hinzufügen, vorhandene Datensätze jedoch nicht bearbeiten), auf Bearbeiten (der Benutzer kann vorhandene Datensätze bearbeiten und neue hinzufügen) oder auf Schreibgeschützt (der Benutzer kann Datensätze nur anzeigen). Die Standardeinstellung ist Bearbeiten. Notizen

  • Die Argumenteinstellung Datenmodus überschreibt die Einstellungen der Eigenschaften AllowEdits, AllowDeletions, AllowAdditions und DataEntry des Formulars. Wenn z. B. die AllowEdits-Eigenschaft eines Formulars auf Nein festgelegt ist, können Sie weiterhin die ÖffnenFormular-Aktion verwenden, um das Formular im Bearbeitungsmodus zu öffnen.

  • Wenn Sie dieses Argument leer lassen, öffnet Access das Formular im Dateneingabemodus, der durch die Eigenschaften AllowEdits, AllowDeletions, AllowAdditions und DataEntry des Formulars festgelegt wird.

Window Mode

Der Fenstermodus, in dem das Formular geöffnet wird. Klicken Sie auf Normal (das Formular wird in dem modus geöffnet, der durch seine Eigenschaften festgelegt ist), Ausgeblendet (das Formular ist ausgeblendet), Symbol (das Formular wird als kleine Titelleiste am unteren Bildschirmrand minimiert geöffnet) oder Dialog (die Eigenschaften Modal und PopUp des Formulars sind auf Ja festgelegt). Die Standardeinstellung ist Normal.

HINWEIS: Einige Argumenteinstellungen für den Fenstermodus gelten nicht, wenn Dokumente im Registerkartenformat verwendet werden. So wechseln Sie zu überlappenden Fenstern:

  1. Klicken Sie auf die Registerkarte Datei und dann auf Optionen.

  2. Klicken Sie im Dialogfeld Access-Optionen auf Aktuelle Datenbank.

  3. Klicken Sie im Abschnitt Anwendungsoptionenunter Dokumentfensteroptionen auf Überlappende Fenster.

  4. Klicken Sie auf OK, schließen Sie die Datenbank dann, und öffnen Sie sie erneut.

Hinweise

Diese Aktion ähnelt dem Doppelklicken auf ein Formular im Navigationsbereich oder dem Rechtsklick auf das Formular im Navigationsbereich und dem anschließenden Auswählen einer Ansicht.

Ein Formular kann modal (es muss geschlossen oder ausgeblendet werden, bevor der Benutzer eine andere Aktion ausführen kann) oder ohne Modus (der Benutzer kann zu anderen Fenstern wechseln, während das Formular geöffnet ist) sein. Es kann auch ein Popupformular sein (ein Formular, das zum Sammeln oder Anzeigen von Informationen verwendet wird, die über allen anderen Access-Fenstern verbleiben). Sie legen die Eigenschaften Modal und PopUp fest, wenn Sie das Formular entwerfen. Wenn Sie Normal für das Argument Fenstermodus verwenden, wird das Formular in dem von diesen Eigenschafteneinstellungen angegebenen Modus geöffnet. Wenn Sie Dialog für das Argument Fenstermodus verwenden, werden diese Eigenschaften auf Ja festgelegt. Ein als ausgeblendetes oder als Symbol geöffnetes Formular kehrt in den durch die Eigenschafteneinstellungen angegebenen Modus zurück, wenn Sie es anzeigen oder wiederherstellen.

Wenn Sie ein Formular öffnen, bei dem das Argument Fenstermodus auf Dialog festgelegt ist, hält Access das Makro an, bis das Formular geschlossen oder ausgeblendet wird. Sie können ein Formular ausblenden, indem Sie die Visible-Eigenschaft mithilfe der SetValue-Aktion auf Nein festlegen.

Tipp

Sie können ein Formular im Navigationsbereich auswählen und es in eine Makroaktionszeile ziehen. Dadurch wird automatisch eine OpenForm-Aktion erstellt, die das Formular in der Formularansicht öffnet.

Die von Ihnen angewendete Filter- und WHERE-Bedingung wird zur Einstellung der Filter-Eigenschaft des Formulars.

Beispiele

Festlegen des Werts eines Steuerelements mithilfe eines Makros

Das folgende Makro öffnet das Formular zum Hinzufügen von Produkten über eine Schaltfläche im Formular für Lieferanten. Es zeigt die Verwendung der Aktionen Echo, FensterSchließen, ÖffnenFormular, SetzenWert und GeheZuSteuerelement. Die Aktion SetValue legt das Steuerelement "Lieferanten-ID" im Formular "Produkte" auf den aktuellen Lieferanten im Formular Lieferanten fest. Die GoToControl-Aktion verschiebt dann den Fokus in das Feld Kategorie-ID, in dem Sie mit der Eingabe von Daten für das neue Produkt beginnen können. Dieses Makro sollte der Schaltfläche zum Hinzufügen von Produkten im Formular für Lieferanten zugeordnet werden.

Aktion

Argumente: Einstellung

Kommentar

Echo

Echo: Nein

Beenden der Bildschirmaktualisierung, während das Makro ausgeführt wird

FensterSchließen

Objekttyp: FormularObjektname: Produktliste Speichern: Nein

Schließen des Produktlistenformulars

OpenForm

Formularname: Produkte Ansicht: FormData-Modus: AddWindow-Modus: Normal

Öffnen des Produktformulars

SetzenWert

Item: [Forms]![Products]![SupplierID] Expression: SupplierID

Legen Sie im Formular Lieferanten das Steuerelement Lieferanten-ID auf den aktuellen Lieferanten fest.

GoToControl

Steuerelementname: KategorieID

Wechseln Sie zum Steuerelement Kategorie-ID.

Das folgende Makro öffnet ein Produktlistenformular in der unteren rechten Ecke des Lieferantenformulars, in dem die Produkte des aktuellen Lieferanten angezeigt werden. Es zeigt die Verwendung der Aktionen Echo, MessageBox, GoToControl, StopMakro, OpenForm und MoveAndSizeWindow. Es veranschaulicht außerdem die Verwendung eines bedingten Ausdrucks mit den Aktionen MessageBox, GoToControl und StopMakro. Dieses Makro sollte der Schaltfläche für die Überprüfung der Produkte im Lieferantenformular zugeordnet werden.

Synchronisieren von Formularen mithilfe eines Makros

Bedingung

Aktion

Argumente: Einstellung

Kommentar

Echo

Echo: Nein

Beenden der Bildschirmaktualisierung, während das Makro ausgeführt wird

IsNull([SupplierID])

MessageBox

Message: Wechseln Sie zum Datensatz des Lieferanten, dessen Produkte Sie anzeigen möchten, und klicken Sie dann erneut auf die Schaltfläche für die Überprüfung der Produkte. Signalton: YesType: NoneTitle: Select a Supplier

Wenn im Lieferantenformular kein aktueller Lieferant vorhanden ist, zeigen Sie eine Meldung an.

...

GoToControl

Steuerelementname: Firma

Verschieben Sie den Fokus auf das CompanyName-Steuerelement.

...

Stoppmakro

Halten Sie das Makro an.

OpenForm

Formularname: Produktlistenansicht: DatenblattFiltername: Where Condition: [SupplierID] = [Forms]! [Lieferanten]! [SupplierID] Datenmodus: SchreibgeschütztWindow-Modus: Normal

Öffnen Sie das Produktlistenformular, und ziegen Sie die Produkte des aktuellen Lieferanten an.

MoveAndSizeWindow

Rechts: 1,9809 cm Nach unten: 4,5 cm

Positionieren Sie das Produktlistenformular in der unteren rechten Ecke des Lieferantenformulars.