Registriert seit: 05.12.2019
Version(en): 2016
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
Registriert seit: 05.09.2019
Version(en): Office 365
Hallo
versuch es mal so
Code:
Sheets(1).Range("B1").Value = Sheets(1).Range("B1").Value - TimeValue("00:00:01")
LG UweD
Registriert seit: 05.12.2019
Version(en): 2016
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.
Registriert seit: 05.09.2019
Version(en): Office 365
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
Registriert seit: 05.12.2019
Version(en): 2016
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?
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
in welcher Codezeile kommt der Fehler?
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 05.12.2019
Version(en): 2016
Es wird eine Messagebox mit o.g. Inhalt im Tabellenblatt angezeigt. Und wenn man OK drückt, wird eine Sekunde vom Timer heruntergezählt.
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
kommentiere mal die On Error Goto-Codezeile aus.
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 05.12.2019
Version(en): 2016
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?
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
(26.06.2020, 10:01)Redgeier schrieb: Es klappt jetzt.
das dürfte nicht sein! Und warum willst Du mehrmals auf den Button klicken?
Gruß Stefan
Win 10 / Office 2016