VBA Wait Funktion - Wie benutze ich die Excel VBA Wait Funktion?

Inhaltsverzeichnis:

Anonim

VBA-Wartefunktion

Ähnlich wie bei der Sleep-Funktion bewirkt die Wait-Funktion in VBA, dass ein Code einige Sekunden wartet oder pausiert. Wie werden solche Funktionen verwendet, bei denen ein bestimmter Code angehalten oder angehalten werden muss, damit zuerst ein anderes Programm funktioniert und dann das andere Programm fortgesetzt wird? In VBA wird es auch als Application.Wait-Methode bezeichnet.

Wie der Name schon sagt, wird die VBA-Wartefunktion in VBA verwendet, um ein Programm auf eine bestimmte Zeit zu beschränken, damit während dieser Zeit anderer Code funktionieren kann. Die Hintergrundanwendungen laufen weiter und nur das aktuelle Modul wartet.

Syntax für die Wartefunktion in Excel VBA

Die Syntax zur Verwendung der Application.Wait-Funktion in VBA lautet wie folgt:

Diese Funktion gibt einen Booleschen Wert zurück.

Wenn wir also heute einen Code benötigen, der bis 14:00 Uhr wartet, lautet die Syntax für den Code wie folgt:

Application.Wait ("14:00:00")

Mit dem obigen Code wird der Code bis 14:00 Uhr angehalten und erst nach 14:00 Uhr fortgesetzt. Dies ist nicht optimal, um einen Code auf 14 Uhr warten zu lassen. Im Allgemeinen möchten wir weitere 10 Sekunden auf einen bestimmten Code warten und dann ausführen. Wenn ich Code erstellen muss, um 10 Sekunden zu warten, lautet der Code wie folgt:

Application.Wait (Now + TimeValue ("0:00:10"))

Jetzt ist die Funktion, die die aktuelle Zeit benötigt, und wir addieren 10 Sekunden zur aktuellen Zeit-Zeit-Wert-Funktion, damit der Code 10 Sekunden warten oder pausieren kann.

Hinweis: Um VBA verwenden zu können, muss die Registerkarte "Entwickler" auf der Registerkarte "Dateien" im Abschnitt "Optionen" aktiviert sein.

Wie benutze ich die Excel VBA Wait Funktion?

Anhand einiger Beispiele erfahren Sie, wie Sie eine VBA Wait Excel-Funktion verwenden.

Sie können diese VBA Wait Excel-Vorlage hier herunterladen - VBA Wait Excel-Vorlage

VBA Wait Function - Beispiel # 1

Derzeit ist die Zeit in meinem Laptop 15:50 Uhr und ich möchte, dass der Code um 16:00 Uhr fortgesetzt wird. Wir werden einige Variablen einfach ergänzen, aber das Ergebnis nach 16:00 Uhr anzeigen. Wir möchten, dass der Code auf diesen Zeitraum wartet.

Schritt 1: Gehen Sie zur Registerkarte Entwickler und klicken Sie auf Visual Basic, um den VB-Editor zu öffnen.

Schritt 2: Klicken Sie auf Insert Tab und dann auf Module .

Schritt 3: Sobald sich das Codefenster öffnet, deklarieren Sie eine Unterfunktion, um mit dem Schreiben des Codes zu beginnen.

Code:

 Sub Sample () End Sub 

Schritt 4: Deklarieren Sie drei Variablen AB und C als Ganzzahl.

Code:

 Sub Sample () A, B, C als Integer End Sub dimen 

Schritt 5: Ordnen Sie den Variablen A und B zufällige Werte zu.

Code:

 Unterprobe () Dim A, B, C As Integer A = 10 B = 15 End Sub 

Schritt 6: Verwenden Sie eine application.wait-Funktion, damit die Funktion bis 16:00 Uhr wartet.

Code:

 Unterprobe () Abm. A, B, C Als Ganzzahl A = 10 B = 15 Anwendung. Warten ("16:00:00") Ende Unterprobe 

Schritt 7: Verwenden Sie die Addition von A und B und speichern Sie die Ausgabe in C.

Code:

 Unterprobe () Dim A, B, C As Integer A = 10 B = 15 Application.Wait ("16:00:00") C = A + B End Sub 

Schritt 8: Verwenden Sie eine Msgbox-Funktion, um den Wert von C anzuzeigen.

Code:

 Unterprobe () A, B, C abmessen Als Ganzzahl A = 10 B = 15 Anwendung. Warten ("16:00:00") C = A + B MsgBox C Ende Unter 

Schritt 9: Führen Sie den obigen Code aus. Sobald wir den Code ausführen, sehen wir, dass der Code erst um 16:00 Uhr eine Meldung anzeigt, aber nach 16:00 Uhr erhalte ich die folgende Ausgabe.

Ich musste bis 16:00 Uhr warten, um dieses Ergebnis zu sehen. Der Code der Msgbox-Funktion musste eigentlich warten.

VBA Wait Function - Beispiel # 2

Lassen Sie uns den Code mit einigen personalisierten Meldungen sehen, dass der Code 10 Sekunden lang wartet. Nach Ablauf von 10 Sekunden wird angezeigt, dass die Wartezeit abgelaufen ist, und das Endergebnis angezeigt.

Schritt 1: Gehen Sie zur Registerkarte Entwickler und klicken Sie auf Visual Basic, um den VB-Editor zu öffnen.

Schritt 2: Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample1 () End Sub 

Schritt 3: Deklarieren Sie drei Variablen AB und C als Ganzzahl.

Code:

 Sub Sample1 () Dim A, B, C As Integer End Sub 

Schritt 4: Weisen Sie den Variablen A und B Zufallswerte zu.

Code:

 Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 End Sub 

Schritt 5: Verwenden Sie eine Msgbox-Funktion, um anzuzeigen, dass die Wartezeit kurz vor dem Start steht.

Code:

 Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "Die Wartezeit wird gestartet" End Sub 

Schritt 6: Verwenden Sie die Wait-Funktion, um 10 Sekunden auf den Code zu warten.

Code:

 Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "Die Wartezeit wird gestartet" Application.Wait (Now + TimeValue ("0:00:10")) End Sub 

Schritt 7: In Variable C wird der Wert von B / A gespeichert und eine personalisierte Meldung angezeigt, dass die Wartezeit abgelaufen ist. Anschließend wird der Wert von C angezeigt.

Code:

 Sub Sample1 () Dim A, B, C As Integer A = 2 B = 10 MsgBox "Die Wartezeit wird gestartet" Application.Wait (Now + TimeValue ("0:00:10")) C = B / A MsgBox " Die Wartezeit ist abgelaufen "MsgBox C End Sub 

Schritt 8: Wir führen den Code aus und sehen die erste Nachricht wie die folgende.

Schritt 9: Drücken Sie OK, um das nächste Ergebnis nach Ablauf von 10 Sekunden anzuzeigen.

Schritt 10: Wenn wir auf OK drücken, erhalten wir das Endergebnis.

Im obigen Beispiel haben wir dafür gesorgt, dass der Code 10 Sekunden wartet und dann das Ergebnis des Werts von C anzeigt.

VBA Wait Function - Beispiel # 3

Benennen wir nun die Arbeitsblätter Blatt 1 und Blatt 2 wie folgt um: Anand und Aran. Zwischen beiden Arbeitsblättern, die umbenannt werden, sollen jedoch 5 Sekunden liegen.

Schritt 1: Gehen Sie zur Registerkarte Entwickler und klicken Sie auf Visual Basic, um den VB-Editor zu öffnen.

Schritt 2: Deklarieren Sie eine Unterfunktion, um den Code zu schreiben.

Code:

 Sub Sample2 () End Sub 

Schritt 3: Aktivieren Sie das erste Arbeitsblatt.

Code:

 Sub Sample2 () Arbeitsblätter ("Sheet1") Aktivieren Sie End Sub 

Schritt 4: Benennen Sie das erste Arbeitsblatt in Anand um.

Code:

 Sub Sample2 () Arbeitsblätter ("Sheet1"). Aktivieren Sie Arbeitsblätter ("Sheet1"). Name = "Anand" End Sub 

Schritt 5: Zeigen Sie eine Meldung an, dass Blatt 1 umbenannt wurde, und der Code wird fünf Sekunden lang angehalten.

Code:

 Sub Sample2 () Worksheets ("Sheet1"). Aktivieren Sie Worksheets ("Sheet1"). Name = "Anand" MsgBox "Sheet 1, das jetzt umbenannt wird, Code wird für 5 Sekunden angehalten" End Sub 

Schritt 6: Verwenden Sie die Wait-Funktion, um den Code fünf Sekunden warten zu lassen.

Code:

 Sub Sample2 () Arbeitsblätter ("Sheet1"). Aktivieren Sie Arbeitsblätter ("Sheet1"). Name = "Anand" MsgBox "Sheet 1, jetzt umbenannt, Code wird für 5 Sekunden angehalten." Application.Wait (Now + TimeValue ("0:00: 05 ")) End Sub 

Schritt 7: Benennen Sie nun das zweite Blatt 2 in Aran um.

Code:

 Sub Sample2 () Arbeitsblätter ("Sheet1"). Aktivieren Sie Arbeitsblätter ("Sheet1"). Name = "Anand" MsgBox "Sheet 1, jetzt umbenannt, Code wird für 5 Sekunden angehalten." Application.Wait (Now + TimeValue ("0:00: 05 ")) Arbeitsblätter (" Sheet2 "). Aktivieren Sie Arbeitsblätter (" Sheet2 "). Name =" Aran "End Sub 

Schritt 9: Zeigen Sie eine Meldung an, dass Blatt 2 umbenannt wurde und die Wartezeit abgelaufen ist.

Code:

 Sub Sample2 () Arbeitsblätter ("Sheet1"). Aktivieren Sie Arbeitsblätter ("Sheet1"). Name = "Anand" MsgBox "Sheet 1, jetzt umbenannt, Code wird für 5 Sekunden angehalten." Application.Wait (Now + TimeValue ("0:00: 05 ")) Arbeitsblätter (" Sheet2 "). Arbeitsblätter (" Sheet2 ") aktivieren. Name =" Aran "MsgBox" Die Wartezeit ist abgelaufen und Blatt 2 wird ebenfalls in "End Sub" umbenannt 

Schritt 10: Führen Sie nun den Code aus, um das Ergebnis anzuzeigen.

Wir können sehen, dass Blatt 1 in Anand umbenannt wurde und wir die Nachricht erhalten, fünf Sekunden zu warten. Klicken Sie auf OK und warten Sie fünf Sekunden auf die zweite Nachricht.

Aus den obigen Beispielen geht hervor, wie die Wait-Funktion in VBA verwendet wird.

Dinge, an die man sich erinnern sollte

Es gibt ein paar Dinge, an die wir uns bei der Excel VBA-Wartefunktion erinnern müssen:

  • Es ähnelt der Sleep-Funktion.
  • Die Wait-Funktion ist im Gegensatz zur Sleep-Funktion, die eine Windows-Funktion ist, in VBA integriert.
  • Die Wait-Funktion verwendet Time als Argument.

Empfohlene Artikel

Dies war eine Anleitung zur VBA-Wartefunktion. Hier haben wir die Verwendung der Excel VBA-Wartefunktion zusammen mit praktischen Beispielen und einer herunterladbaren Excel-Vorlage besprochen. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Wie benutze ich VBA TIMER?
  2. Subtrahieren Sie die Zeit in Excel
  3. Leitfaden zur Excel VBA-Zeit
  4. JETZT Excel-Funktion