Home > Artikel > Ausgabe 5/2014 > Ereignisse in Formularen: Zeitgeber

Ereignisse in Formularen: Zeitgeber

Achtung: Sie sind nicht angemeldet. Wenn Sie Abonnent sind und sich anmelden, lesen Sie den kompletten Artikel, laden das PDF herunter oder probieren die Beispieldatenbank aus (sofern vorhanden).

Immer wieder kann es notwendig werden, in Formularen in regelmäßigen Abständen bestimmte Aktionen durchzuführen – oder einfach nur eine bestimmte Zeit nach dem Öffnen verstreichen zu lassen, bevor eine weitere Aktion erfolgt. Dieser Artikel zeigt die Grundlagen der Programmieren von zeitgesteuerten Ereignissen in Formularen.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1405_EreignisseZeitgeber.mdb.

Zeitgeber einschalten

Um den Zeitgeber eines Formulars (in der Beispieldatenbank frmZeitgeber) einzuschalten, müssen Sie lediglich die Eigenschaft Zeitgeberintervall des Formulars auf einen Zahlenwert einstellen, welcher der Anzahl der Millisekunden bis zum nächsten Auslösen des entsprechenden Ereignisses entspricht. Wenn Sie also etwa nach dem Öffnen eines Formulars 60 Sekunden verstreichen lassen wollen, legen Sie für die Eigenschaft Zeitgeberintervall den Wert 60.000 fest.

Damit schaut Access nun nach 60 Sekunden nach, ob Sie auch eine Prozedur für das Ereignis Bei Zeitgeber hinterlegt haben. Dazu legen Sie für diese Eigenschaft den Wert [Ereignisprozedur] fest und klicken auf die Schaltfläche mit den drei Punkten (siehe Bild 1). Im VBA-Editor finden Sie dann direkt die entsprechende Ereignisprozedur Form_Timer vor:

Anlegen eines Zeitgebers

Bild 1: Anlegen eines Zeitgebers

Private Sub Form_Timer()

End Sub

Wenn Sie hier etwa die folgende Anweisung einfügen, erscheint 60 Sekunden nach dem Öffnen das entsprechende Meldungsfenster:

MsgBox "Zeitgeber"

Zeitgeber ausschalten

Es gibt zwei Möglichkeiten, den Zeitgeber auszuschalten:

  • Sie schließen das Formular oder
  • Sie stellen den Wert der Eigenschaft Zeitgeberintervall auf 0 ein.

Letzteres werden Sie nicht mehr im Eigenschaftsfenster durchführen, da dies ja in der Regel zur Laufzeit geschehen soll. Also erledigen Sie das per VBA-Code. In unserem Beispiel soll der Zeitgeber mit Erscheinen des Meldungsfensters deaktiviert werden. Die Form_Timer-Prozedur sieht dann so aus (stellen Sie zuvor die Eigenschaft Zeitgeberintervall auf 1.000 ein, damit Sie nicht jedes Mal eine Minute warten müssen):

Sie haben das Ende des frei verfügbaren Teil dieses Artikels erreicht!

Wenn Sie mehr lesen und auf viele weitere Artikel zugreifen möchten, melden Sie sich als Abonnent unter Login an. Falls nicht, bestellen Sie doch einfach ein Jahresabonnement!