Macro para crear reloj en cuenta regresiva
Dam, en esta oportunidad necesito crear un reloj digital que realice el conteo en cuenta regresiva, el mismo se debe ejecutar en un Label de un formulario con la propiedad caption.
Al respecto tengo las siguientes necesidades:
- Que el tiempo lo pueda definir y modificar para cada ejecución si lo deseo.
- Que adicional el tiempo si no lo defino desde el inicio, se determine en una constante de 45 minutos, "00:45:00".
- Que al llegar a valor de Cero "00:00:00", se me dispare un msgbox avisando que el tiempo concluyó y se me cierre el formulario con Unload Me.
- Debe tener el botón de "Iniciar conteo", "Detener conteo", "Reiniciar conteo" y "Finalizar conteo"
Option Explicit
Dim StopTimer As Boolean
Private Sub btn_play_Click()
'Start the timer
Const Minutes = 1 ' fija un valor constante de 1 minuto
' Quisiera poder variar este valor, puede ser desde
' valor ingresado a una celda
Dim EndTime As Double
StopTimer = False
Do
If EndTime - Now < 0 Then
EndTime = Now + TimeSerial(0, Minutes, 0)
End If
' Range("A1") = EndTime - Now
Me.lbl_reloj.Caption = EndTime - Now
Range("A1") = EndTime - Now
Me.lbl_reloj.Caption = Range("A1")
Me.lbl_reloj.Caption = Format(Range("A1"), "hh:mm:ss")
Me.lbl_reloj.Font.Name = "Arial"
Me.lbl_reloj.Font.Size = 13
DoEvents
Loop Until StopTimer
End Sub
Private Sub CommandButton2_Click()
'Stops the timer
StopTimer = True
End SubEste código, lo obtuve investigando por la red y le hice unas modificaciones, pues originalmente el conteo lo ejecuta en una celda pero no en formulario, Ahora al llegar a cero se me reinicia el conteo, sea en la celda o en el formulario.
1 respuesta
Respuesta de Dante Amor
2

