Mitunter besteht der Wunsch, eine Prozedur zu einem bestimmten Zeitpunkt zu starten.
Zu diesem Zweck gibt es in VBA die Methode „Application.OnTime“.
Wichtig ist es, dass hierzu jeweils zwei Prozeduren notwendig sind.
Wie das programmiert werden kann, zeigt dieser Beitrag.
1. Beschreibung der Beispiele
In einem ersten Beispiel soll zu einem bestimmten Zeitpunkt eine MsgBox die Mitteilung geben, dass ein wichtiger Anruf vorgenommen werden soll.
In einem zweiten Beispiel soll die Prozedur erst nach Ablauf einer festzulegenden Zeit in Stunden, Minuten und Sekunden gestartet werden.

2. Beispiel 1: Zeitpunkt für Anruf
Die erste Prozedur startet mit der Methode Application.OnTime, legt die Startzeit der zweiten Prozedur fest und nennt die zweite Prozedur.
Startzeit soll z.B. 15:30 Uhr sein. Zu diesem Zeitpunkt erscheint eine MsgBox mit der Mitteilung:
„15:30 Uhr. Jetzt die Fa. Meier-Saft anrufen.“
Schreibe die erste Prozedur in den VBA-Editor:
Sub StartUhrzeit()
Application.OnTime TimeValue(„15:30:00“), „MeineErinnerung“
End Sub
In der zweiten Prozedur gibt die MsgBox besagte Mitteilung heraus.
Schreibe in den VBA-Editor:
Sub MeineErinnerung()
MsgBox Time & „Jetzt die Fa. Meier-Saft anrufen“
End Sub
Die MsgBox gibt pünktlich die Anweisung zum Anruf heraus.
3. Beispiel 2: Verzögerte Prozedur
Hier gibt es wiederum zwei Prozeduren.
Die erste Prozedur startet mit der Methode Application.OnTime, legt, ausgehend von der jetzigen Zeit (Now) die Zeitverzögerung fest, nach deren Ablauf die zweite Prozedur starten soll.
Start ist jetzt (Now). Danach sollen 10 Sekunden vergehen, bis eine MsgBox eine Anweisung herausgibt.
Schreibe die erste Prozedur in den VBA-Editor:
Sub Verzoegerung()
Application.OnTime Now + TimeValue(„00.00:10“), „MeineProzedur“
End Sub
In der zweiten Prozedur gibt die MsgBox eine Mitteilung heraus.
Schreibe in den VBA-Editor:
Sub MeineProzedur()
MsgBox Time & „Jetzt die Fa. Meier-Saft anrufen“
End Sub
Nach Ablauf der Verzögerung von 10 Sekunden gibt die MsgBox die Anweisung zum Anruf heraus.
Entdecke mehr von Clevercalcul
Melde dich für ein Abonnement an, um die neuesten Beiträge per E-Mail zu erhalten.