Clever-Excel-Forum

Normale Version: Countdown Timer
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo!

Ich habe einen kleinen Countdown-Timer erstellt. Dazu kann ich in B1 eine Zeit (m:ss) eintragen und durch den Start Button soll die Zeit in Sekundenschritten aud 0 herunterlaufen.

Es wird mir jedoch der Laufzeitfehler 424 (Objekt erforderlich) angezeigt!

Warum??? Kann mir da Jemand helfen?

Hier der Code:

Sub starttimer()
Application.OnTime Now + TimeValue("00:00:01"), "nexttick"
End Sub

Sub nexttick()
sheet1.Range("B1").Value = sheet1.Range("b1").Value - TimeValue("00:00:01")   -> hier wird der Fehler angezeigt!!
starttimer
End Sub

Sub stoptimer()
Application.OnTime Now + TimeValue("00:00:01"), "nexttick", , False
End Sub


Danke
Hallo

versuch es mal so
Code:
    Sheets(1).Range("B1").Value = Sheets(1).Range("B1").Value - TimeValue("00:00:01")


LG UweD
Hallo Uwe,

Danke für Deine Antwort.

Hast Du mal mein Modul-Code ausprobiert? 

Bei Sub stoptimer wird der Laufzeitfehler 1004 " Die Methode 'OnTime' für das Objekt 'Application' ist fehlgeschlagen angezeigt.

Mit Deinem Hinweis (Sheets..) läuft der Timer los..Ich wollte ihn aber mit dem Stop-Button noch anhalten.
Hi

Code:
Option Explicit
Dim NextInst As Date
Const TimeDiff = "00:00:01"


Sub starttimer()
    nexttick
End Sub


Sub nexttick()
    On Error GoTo Fehler
    Sheets(1).Range("B1").Value = Sheets(1).Range("B1").Value - TimeValue(TimeDiff)
    NextInst = Now + TimeValue(TimeDiff)
    Application.OnTime NextInst, "nexttick"
Fehler:
    If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
    If Err.Number <> 0 Then Resume Next
End Sub




Sub stoptimer()
    On Error Resume Next
    Application.OnTime NextInst, "nexttick", , False
End Sub


Bei deinem Konstrukt ist bei stoptimer die Zeit bereits abgelaufen und es kommt zum Fehler



LG UweD
Hallo UweD,

Vielen Dank für den Code.

Ich habe ihn so übernommen, jedoch wird bei mir eine nervige Fehlermeldung angezeigt.  "Fehler:9 Index außerhalb des gültigen Bereichs".

Woran liegt das?
Hallo,

in welcher Codezeile kommt der Fehler?
Es wird eine Messagebox mit o.g. Inhalt im Tabellenblatt angezeigt. Und wenn man OK drückt,  wird eine Sekunde vom Timer heruntergezählt.
Hallo,

kommentiere mal die On Error Goto-Codezeile aus.
Danke Stefan!  

Es klappt jetzt.

Noch eine Frage: Wenn ich jetzt zufällig noch einmal den Start-Button betätige, werden 2 Sekunden gleichzeitig abgezogen. Bei 3x Klick..3 Sekunden usw. 

Kann ich das unterbinden?? Es soll ja immer nur eine Sekunde abgezogen werden.

Und welchen Code müsste ich für einen Reset-Button eingeben, damit wieder die Anfangszeit (welche in B1 eingetragen wurde) eingestellt wird?
Hallo,

(26.06.2020, 09:01)Redgeier schrieb: [ -> ]Es klappt jetzt.

das dürfte nicht sein! Und warum willst Du mehrmals auf den Button klicken?
Seiten: 1 2