VBA-Timer-Funktion

Die VBA-Timer-Funktionen geben die Anzahl der Sekunden zurück, die seit Mitternacht des aktuellen Tages verstrichen sind (wird als Single-Datentyp zurückgegeben).

Verwenden der VBA-Timer-Funktion

Der folgende Code zeigt Ihnen, wie Sie die VBA-Timer-Funktion verwenden, um zu bestimmen, wie viele Sekunden seit Mitternacht zum Zeitpunkt der Ausführung des Codes vergangen sind:

12345678 Sub UsingTheVBATimerFunction()Schwache SekundenSeit als SingleSekundenSeit = Timer()Debug.Print sekundenSeitEnd Sub

Das Ergebnis ist:

Verwenden Sie den VBA-Timer, um die tatsächliche Zeit zu erhalten

Sie können die von der Timer-Funktion zurückgegebenen Sekunden in das Format hh:mm:ss konvertieren, um die tatsächliche Zeit anzuzeigen, indem Sie den folgenden Code verwenden:

123456789101112131415 Sub GettingTheActualTime()Schwache SekundenSeit als SinglecTime als Double dimmenDim theActualTime als VarianteSekundenSeit = Timer()cZeit = SekundenSeit / (86400)theActualTime = Format(cTime, "hh:mm:ss")MsgBox "Die seit Mitternacht verstrichene Zeit in Sekunden ist" & " " & SekundenSeit & vbNewLine & _"Die tatsächliche Zeit ist:" & " " & theActualTimeEnd Sub

Das Ergebnis ist:

Zeit für einen Abschnitt des VBA-Codes

Wenn Sie neu geschriebenen Code vergleichen oder „schnellere“ Methoden in VBA diskutieren möchten, können Sie den integrierten Timer von VBA verwenden. Wenn Sie zu Beginn Ihres Codes eine Variable gleich dem Timer setzen und diese vom Timer am Ende subtrahieren, erhalten Sie ein gute Schätzung wie lange ein Stück Code benötigt, um ausgeführt zu werden.

Die Leistung kann unter anderem durch andere Programme beeinträchtigt werden, die ausgeführt werden oder versuchen, sie auszuführen, während Ihr Makro aktiv ist.

Das folgende Beispiel wurde verwendet, um zu sehen, wie lange es dauern würde, das Wort „test“ eine halbe Million Mal in die Zelle A1 von Sheet1 zu schreiben. Es dauerte 21 Sekunden auf meinem Computer.

123456789101112131415161718 Sub-BenchMark()Dim Count As LongBenchmark als Double dimmenBenchmark = Timer'Start des Codes zum TestenFür Anzahl = 1 bis 500000Sheet1.Cells(1, 1) = "test"Nächste Zählung'Ende des zu testenden CodesMsgBox-Timer - BenchmarkEnd Sub

Wenn Ihr Code langsam ausgeführt wird, versuchen Sie ihn zu beschleunigen, indem Sie die Bildschirmaktualisierung deaktivieren. Um den Excel-Bildschirm während der Ausführung des Timers aktiv zu halten, können wir die DoEvents-Methode in den Code einfügen.

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave