Reihenfolge von Ereignissen für Datenbankobjekte

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

Eine einzelne Aktion, z. B. das Wechseln von einem Steuerelement für ein Objekt zu einem anderen Steuerelement, kann mehrere unterschiedliche Ereignisse auslösen, die in einer bestimmten Reihenfolge auftreten. Es ist wichtig zu wissen, wann und in welcher Reihenfolge Ereignisse auftreten, da sich dies darauf auswirken kann, wie und wann Ihre Makros oder Ereignisprozeduren ausgeführt werden. Wenn z. B. zwei Ereignisprozeduren vorhanden sind, die in einer bestimmten Reihenfolge ausgeführt werden müssen, möchten Sie sicherstellen, dass die Ereignisse, denen sie zugeordnet sind, in dieser Reihenfolge auftreten.

Inhalt dieses Artikels

Reihenfolge von Ereignissen für Steuerelemente in Formularen

Reihenfolge von Ereignissen für Datensätze in Formularen

Reihenfolge von Ereignissen für Formulare und Unterformulare

Reihenfolge von Ereignissen bei Tastaturanschlägen und Mausklicks

Reihenfolge von Ereignissen für Berichte und Berichtsabschnitte

Reihenfolge von Ereignissen für Steuerelemente in Formularen

Ereignisse treten für Steuerelemente in Formularen beim Verschieben des Fokus auf ein Steuerelement oder beim Ändern und Aktualisieren von Daten in einem Steuerelement auf.

Hinweis : Microsoft Office Access zeigt die Namen von Ereignissen im Visual Basic-Editor etwas anders als im Eigenschaftenblatt und im Makro-Generator an. Das Ereignis mit dem Namen Bei Fokuserhalt im Eigenschaftenblatt des Formulars und im Makro-Generator trägt z. B. den Namen GotFocus im Visual Basic-Editor. Die Beispiele in diesem Artikel verwenden das VBA-Format (Visual Basic for Applications) für die Namen von Ereignissen.

Verschieben des Fokus auf ein Steuerelement

Wenn Sie den Fokus auf ein Steuerelement in einem Formular verschieben (z. B. durch Öffnen eines Formulars, das mindestens ein aktives Steuerelement enthält, oder durch Verschieben des Fokus auf ein anderes Steuerelement im gleichen Formular), treten die Ereignisse Enter und GotFocus in der folgenden Reihenfolge auf:

Enter Pfeil GotFocus

Beim Öffnen eines Formulars treten die Ereignisse Enter und GotFocus nach den Ereignissen beim Öffnen eines Formulars (z. B. Open, Activate und Current) wie folgt auf:

Open (Formular) Pfeil Activate (Formular) Pfeil Current (Formular) Pfeil Enter (Steuerelement) Pfeil GotFocus (Steuerelement)

Wenn der Fokus von einem Steuerelement in einem Formular verschoben wird (z. B. durch Schließen eines Formulars, das mindestens ein aktives Steuerelement enthält, oder durch Verschieben des Fokus auf ein anderes Steuerelement im gleichen Formular), treten die Ereignisse Exit und LostFocus in der folgenden Reihenfolge auf:

Exit Pfeil LostFocus

Wenn Sie ein Formular schließen, treten die Ereignisse Exit und LostFocus vor den Ereignissen im Zusammenhang mit dem Schließen des Formulars (z. B. Unload, Deactivate und Close) wie folgt auf:

Exit (Steuerelement) Pfeil LostFocus (Steuerelement) Pfeil Unload (Formular) Pfeil Deactivate (Formular) Pfeil Close (Formular)

Ändern und Aktualisieren von Daten in einem Steuerelement

Wenn Sie Daten in ein Steuerelement in einem Formular eingeben oder in diesem ändern und dann den Fokus auf ein anderes Steuerelement verschieben, treten die Ereignisse BeforeUpdate und AfterUpdate auf:

BeforeUpdate Pfeil AfterUpdate

Die Ereignisse Exit und LostFocus für ein Steuerelement, dessen Wert sich ändert, treten nach den Ereignissen BeforeUpdate und AfterUpdate auf:

BeforeUpdate Pfeil AfterUpdate Pfeil Exit Pfeil LostFocus

Wenn Sie den Text in einem Textfeld oder im Abschnitt „Textbereich“ eines Kombinationsfelds ändern, tritt das Ereignis Change auf. Dieses Ereignis tritt immer auf, wenn sich der Inhalt des Steuerelements ändert, aber bevor der Fokus auf ein anderes Steuerelement oder einen anderen Datensatz verschoben wird (und daher vor den Ereignissen BeforeUpdate und AfterUpdate). Die folgende Ereignissequenz tritt für jede Taste auf, die Sie in einem Textfeld oder im Abschnitt „Textfeld“ eines Kombinationsfelds drücken:

KeyDown Pfeil KeyPress Pfeil Dirty Pfeil Change Pfeil KeyUp

Das Ereignis NotInList tritt auf, nachdem Sie einen Wert in ein Kombinationsfeld eingeben, der nicht in der Kombinationsfeldliste gefunden wird, wenn Sie dann versuchen, den Fokus auf ein anderes Steuerelement oder einen anderen Datensatz zu verschieben. Das Ereignis NotInList tritt nach den die Tastaturereignissen und den Change-Ereignissen für das Kombinationsfeld auf, aber vor den Ereignissen für jedes andere Steuerelement oder das Formular. Wenn die LimitToList-Eigenschaft des Kombinationsfelds auf Yes festgelegt ist, tritt das Error-Ereignis für das Formular unmittelbar nach dem NotInList-Ereignis auf:

KeyDown Pfeil KeyPress Pfeil Dirty Pfeil Change Pfeil KeyUp Pfeil NotInList Pfeil Error

Seitenanfang

Reihenfolge von Ereignissen für Datensätze in Formularen

Ereignisse treten für Datensätze in Formularen auf, wenn Sie den Fokus auf einen anderen Datensatz verschieben, Daten in einem Datensatz aktualisieren, mindestens einen vorhandenen Datensatz löschen oder einen neuen Datensatz erstellen.

Verschieben des Fokus auf Datensätze und Aktualisieren von Daten in Datensätzen

Wenn Sie den Fokus auf einen vorhandenen Datensatz in einem Formular verschieben, Daten im Datensatz eingeben oder ändern und den Fokus dann auf einen anderen Datensatz verschieben, tritt die folgende Abfolge von Ereignissen für das Formular auf:

Current (Formular) Pfeil BeforeUpdate (Formular) Pfeil AfterUpdate (Formular) Pfeil Current (Formular)

Wenn Sie den Datensatz verlassen, dessen Daten sich geändert haben, aber bevor Sie den nächsten Datensatz eingeben, treten die Exit- und LostFocus-Ereignisse für das Steuerelement auf, das den Fokus besitzt. Diese Ereignisse treten wie folgt nach den BeforeUpdate- und AfterUpdate-Ereignissen für das Formular auf:

BeforeUpdate (Formular) Pfeil AfterUpdate (Formular) Pfeil Exit (Steuerelement) Pfeil LostFocus (Steuerelement) Pfeil RecordExit (Formular) Pfeil Current (Formular)

Wenn Sie den Fokus zwischen den Steuerelementen in einem Formular verschieben, treten Ereignisse für jedes Steuerelement auf. Die folgenden Ereignissequenzen treten z. B. auf, wenn Sie die folgenden Aktionen ausführen:

  • Öffnen eines Formulars und Ändern von Daten in einem Steuerelement:

    Current (Formular) Pfeil Enter (Steuerelement) Pfeil GotFocus (Steuerelement) Pfeil BeforeUpdate (Steuerelement) Pfeil AfterUpdate (Steuerelement)

  • Verschieben des Fokus auf ein anderes Steuerelement:

    Exit (Steuerelement1) Pfeil LostFocus (Steuerelement1) Pfeil Enter (Steuerelement2) Pfeil GotFocus (Steuerelement2)

  • Verschieben des Fokus auf einen anderen Datensatz:

    BeforeUpdate (Formular) Pfeil AfterUpdate (Formular) Pfeil Exit (Steuerelement2) Pfeil LostFocus (Steuerelement2) Pfeil RecordExit (Formular) Pfeil Current (Formular)

Löschen von Datensätzen

Wenn Sie einen Datensatz löschen, treten die folgenden Ereignisse für das Formular auf, und Microsoft Office Access zeigt ein Dialogfeld an, in dem Sie aufgefordert werden, den Löschvorgang zu bestätigen:

Delete Pfeil BeforeDelConfirm Pfeil AfterDelConfirm

Wenn Sie das Delete-Ereignis abbrechen, treten die BeforeDelConfirm- und AfterDelConfirm-Ereignisse nicht auf, und das Dialogfeld wird nicht angezeigt.

Erstellen eines neuen Datensatzes

Wenn Sie den Fokus auf einen neuen (leeren) Datensatz in einem Formular verschieben und dann einen neuen Datensatz erstellen, indem Sie Daten in ein Steuerelement eingeben, tritt die folgende Ereignissequenz auf:

Current (Formular) Pfeil Enter (Steuerelement) Pfeil GotFocus (Steuerelement) Pfeil BeforeInsert (Formular) Pfeil AfterInsert (Formular)

Die BeforeUpdate- und AfterUpdate-Ereignisse für die Steuerelemente im Formular und für den neuen Datensatz treten nach dem BeforeInsert-Ereignis und vor dem AfterInsert-Ereignis auf.

Seitenanfang

Reihenfolge von Ereignissen für Formulare und Unterformulare

Ereignisse treten für Formulare beim Öffnen oder Schließen eines Formulars, beim Wechseln zwischen Formularen oder beim Arbeiten mit Daten in einem Formular oder Unterformular auf.

Öffnen und Schließen eines Formulars

Wenn Sie ein Formular öffnen, tritt die folgende Ereignissequenz für das Formular auf:

Open Pfeil Load Pfeil Resize Pfeil Activate Pfeil Current

Wenn keine aktiven Steuerelemente im Formular vorhanden sind, tritt das GotFocus-Ereignis für das Formular nach dem Activate-Ereignis, aber vor dem Current-Ereignis auf.

Wenn Sie ein Formular schließen, tritt die folgende Ereignissequenz für das Formular auf:

Unload Pfeil Deactivate Pfeil Close

Wenn keine aktiven Steuerelemente im Formular vorhanden sind, tritt das LostFocus-Ereignis für das Formular nach dem Unload-Ereignis, aber vor dem Deactivate-Ereignis auf.

Wechseln zwischen Formularen

Wenn Sie zwischen zwei geöffneten Formularen wechseln, tritt das Deactivate-Ereignis für das erste Formular und das Activate-Ereignis für das zweite Formular auf:

Deactivate (Formular1) Pfeil Activate (Formular2)

Das Deactivate-Ereignis für ein Formular tritt auch auf, wenn Sie aus dem Formular zu einer anderen Objektregisterkarte in Access wechseln. Allerdings tritt das Deactivate-Ereignis nicht auf, wenn Sie zu einem Dialogfeld, zu einem Formular, dessen PopUp-Eigenschaft auf Yes festgelegt ist, oder zu einem Fenster in einem anderen Programm wechseln.

Hinweis :  Das Open-Ereignis tritt nicht auf, wenn Sie den Fokus auf ein Formular verschieben, das bereits geöffnet ist. Dies gilt selbst dann, wenn Sie den Fokus auf dieses Formular durch Ausführen einer penForm-Aktion verschoben haben.

Arbeiten mit Daten in einem Formular

Formular- und Steuerelementereignisse treten auf, wenn Sie zwischen Datensätzen im Formular wechseln und Daten ändern. Wenn Sie ein Formular z. B. erstmals öffnen, tritt die folgende Ereignissequenz auf:

Open (Formular) Pfeil Load (Formular) Pfeil Resize (Formular) Pfeil Activate (Formular) Pfeil Current (Formular) Pfeil Enter (Steuerelement) Pfeil GotFocus (Steuerelement)

Wenn Sie ein Formular schließen, tritt analog dazu die folgende Ereignissequenz auf:

Exit (Steuerelement) Pfeil LostFocus (Steuerelement) Pfeil Unload (Formular) Pfeil Deactivate (Formular) Pfeil Close (Formular)

Wenn Sie Daten in einem Steuerelement geändert haben, treten die BeforeUpdate- und AfterUpdate-Ereignisse für das Steuerelement und das Formular vor dem Exit-Ereignis für das Steuerelement auf.

Arbeiten mit Unterformularen

Wenn Sie ein Formular öffnen, das ein Unterformular enthält, werden das Unterformular und seine Datensätze vor dem Hauptformular geladen. Die Ereignisse für das Unterformular und dessen Steuerelemente (z. B. Open, Current, Enter und GotFocus) treten daher vor den Ereignissen für das Formular auf. Allerdings tritt das Activate-Ereignis für Unterformulare nicht auf. Daher wird durch das Öffnen eines Hauptformulars ein Activate-Ereignis nur für das Hauptformular ausgelöst.

Beim Schließen eines Formulars, das ein Unterformular enthält, werden analog dazu das Unterformular und seine Datensätze nach dem Formular entladen. Das Deactivate-Ereignis tritt für Unterformulare nicht auf. Daher wird durch das Schließen eines Hauptformulars ein Deactivate-Ereignis nur für das Hauptformular ausgelöst. Die Ereignisse für die Steuerelemente, das Formular und das Unterformular treten in der folgenden Reihenfolge auf:

  1. Ereignisse für die Steuerelemente des Unterformulars (z. B. Exit und LostFocus)

  2. Ereignisse für die Steuerelemente des Formulars (einschließlich des Unterformularsteuerelements)

  3. Ereignisse für das Formular (z. B. Deactivate und lose)

  4. Ereignisse für das Unterformular

Hinweis :  Da die Ereignisse für ein Unterformular nach dem Schließen des Hauptformulars auftreten, treten bestimmte Ereignisse nicht auf, z. B. das Abbrechen des Schließvorgangs des Hauptformulars durch ein Ereignis im Unterformular. Möglicherweise müssen Sie diese Arten von Überprüfungstests in ein Ereignis im Hauptformular verschieben.

Seitenanfang

Reihenfolge von Ereignissen bei Tastenanschlägen und Mausklicks

Tastaturereignisse treten für Formulare und Steuerelemente auf, wenn Sie Tasten drücken oder Tastenanschläge senden, solange das Formular oder das Steuerelement den Fokus besitzt. Mausereignisse treten für Formulare, Formularabschnitte und Steuerelemente in Formularen beim Klicken mit den Maustasten auf, während sich der Mauszeiger in einem Formular, Abschnitt oder Steuerelement befindet. Mausereignisse treten auch auf, wenn Sie den Mauszeiger über ein Formular, einen Abschnitt oder ein Steuerelement bewegen.

Tastaturereignisse

Wenn Sie eine Taste drücken und dann loslassen, während ein Steuerelement in einem Formular den Fokus besitzt (oder die SendKeys-Aktion oder -Anweisung zum Senden von Tastenanschlägen verwenden), tritt die folgenden Ereignissequenz auf:

KeyDown Pfeil KeyPress Pfeil KeyUp

Wenn Sie eine Taste drücken und loslassen oder einen Tastenanschlag im ANSI-Zeichensatz senden, treten die KeyDown-, KeyPress- und KeyUp-Ereignisse auf. Wenn Sie eine ANSI-Taste drücken und gedrückt halten, werden die KeyDown- und KeyPress-Ereignisse abwechselnd wiederholt (KeyDown, KeyPress, KeyDown, KeyPress usw.), bis Sie die Taste loslassen. Anschließend tritt das KeyUp-Ereignis auf.

Wenn Sie eine Taste drücken und dann loslassen, die keine ANSI-Taste ist, treten die KeyDown- und KeyUp-Ereignisse auf. Wenn Sie eine Taste drücken und gedrückt halten, die keine ANSI-Taste ist, tritt das KeyDown-Ereignis wiederholt auf, bis Sie die Taste loslassen. Anschließend tritt das KeyUp-Ereignis auf.

Wenn ein weiteres Ereignis für ein Steuerelement durch das Drücken einer Taste ausgelöst wird, tritt dieses Ereignis nach dem KeyPress-Ereignis auf, aber vor dem KeyUp-Ereignis. Wenn ein Tastenanschlag z. B. Text in einem Textfeld ändert und damit ein Change-Ereignis auslöst, tritt die folgende Ereignissequenz auf:

KeyDown Pfeil KeyPress Pfeil Change Pfeil KeyUp

Wenn ein Tastenanschlag bewirkt, dass der Fokus von einem Steuerelement auf ein anderes Steuerelement verschoben wird, tritt das KeyDown-Ereignis für das erste Steuerelement auf, wohingegen die KeyPress- und KeyUp-Ereignisse für das zweite Steuerelement auftreten. Wenn Sie z. B. Daten in einem Steuerelement ändern und dann die TAB-TASTE drücken, um zum nächsten Steuerelement zu gelangen, tritt die folgende Ereignissequenz auf:

  • Erstes Steuerelement:

    KeyDown Pfeil BeforeUpdate Pfeil AfterUpdate Pfeil Exit Pfeil LostFocus

  • Zweites Steuerelement:

    Enter Pfeil GotFocus Pfeil KeyPress Pfeil KeyUp

Mausereignisse

Wenn Sie mit einer Maustaste klicken und diese dann loslassen, während sich der Mauszeiger auf einem Steuerelement in einem Formular befindet, tritt die folgende Ereignissequenz für das Steuerelement auf:

MouseDown Pfeil MouseUp Pfeil Click

Wenn ein Steuerelement den Fokus besitzt und Sie auf ein anderes Steuerelement klicken, um den Fokus auf dieses zweite Steuerelement zu verschieben, tritt die folgende Ereignissequenz auf:

  • Erstes Steuerelement:

    Exit Pfeil LostFocus

  • Zweites Steuerelement:

    Enter Pfeil GotFocus Pfeil MouseDown Pfeil MouseUp Pfeil Click

Wenn Sie zu einem anderen Datensatz wechseln und dann auf ein Steuerelement klicken, tritt das Current-Ereignis für das Formular auch vor dem Enter-Ereignis für das Steuerelement auf.

Durch Doppelklicken auf ein Steuerelement treten die Click- und DblClick-Ereignisse auf. Wenn Sie z. B. auf ein anderes Steuerelement als eine Befehlsschaltfläche doppelklicken, tritt die folgende Ereignissequenz für das Steuerelement auf:

MouseD own Pfeil MouseUp Pfeil Click Pfeil DblClick Pfeil MouseUp

Wenn Sie auf eine Befehlsschaltfläche doppelklicken, tritt die vorherige Abfolge von Ereignissen auf, gefolgt von einem zweiten Click-Ereignis.

Das MouseMove-Ereignis für ein Formular, einen Abschnitt oder ein Steuerelement tritt auf, wenn Sie den Mauszeiger über das Formular, den Abschnitt oder das Steuerelement bewegen. Dieses Ereignis ist von den anderen Mausereignissen unabhängig.

Seitenanfang

Reihenfolge von Ereignissen für Berichte und Berichtsabschnitte

Ereignisse treten für Berichte und Berichtsabschnitte beim Öffnen eines Berichts zum Drucken oder Anzeigen einer Vorschau bzw. beim Schließen eines Berichts auf.

Ereignisse für Berichte

Wenn Sie einen Berichts zum Drucken oder Anzeigen einer Vorschau öffnen und später schließen oder auf eine andere Objektregisterkarte in Access verschieben, tritt die folgende Ereignissequenz für den Bericht auf:

Open Pfeil Activate Pfeil Close Pfeil Deactivate

Wenn Sie zwischen zwei geöffneten Berichten wechseln, tritt das Deactivate-Ereignis für den ersten Bericht und das Activate-Ereignis für den zweiten Bericht auf:

Deactivate (Bericht1) Pfeil Activate (Bericht2)

Das Deactivate-Ereignis für einen Bericht tritt auch auf, wenn Sie aus dem Bericht zu einer anderen Objektregisterkarte in Access wechseln. Allerdings tritt das Deactivate-Ereignis nicht auf, wenn Sie zu einem Dialogfeld, zu einem Formular, dessen PopUp-Eigenschaft auf Yes festgelegt ist, oder zu einem Fenster in einem anderen Programm wechseln.

Wenn Sie einen Bericht öffnen, der auf einer Abfrage basiert, löst Access das Open-Ereignis für den Bericht aus, bevor die zugrunde liegende Abfrage ausgeführt wird. Infolgedessen können Sie die Kriterien für den Bericht mithilfe eines Makros oder einer Ereignisprozedur festlegen, das bzw. die auf das Open-Ereignis reagiert. Das Makro oder die Ereignisprozedur kann z. B. ein benutzerdefiniertes Dialogfeld öffnen, in das Sie Berichtskriterien eingeben.

Ereignisse für Berichtsabschnitte

Wenn Sie einen Bericht drucken oder eine Vorschau anzeigen, treten die Format- und Print-Ereignisse für die Berichtsabschnitte nach den Open- und Activate-Ereignissen für den Bericht und vor den Close- oder Deactivate-Ereignissen für den Bericht auf:

Open (Bericht) Pfeil Activate (Bericht) Pfeil Format (Berichtsabschnitt) Pfeil Print (Berichtsabschnitt) Pfeil Close (Bericht) Pfeil Deactivate (Bericht)

Darüber hinaus können die folgenden Ereignisse während oder nach der Formatierung, aber vor dem Print-Ereignis auftreten:

  • Das Retreat-Ereignis tritt auf, wenn Access während der Formatierung des Berichts zu einem vorherigen Abschnitt zurückkehrt.

  • Das NoData-Ereignis tritt auf, wenn vom Bericht keine Datensätze angezeigt werden.

  • Das Page-Ereignis tritt nach dem Formatieren, aber vor dem Drucken auf. Sie können dieses Ereignis zum Anpassen des Aussehens des gedruckten Berichts verwenden.

Seitenanfang

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Ihre Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×