Actualizar formula cada segundo en una label después de elegir un dato en un cuadro combinado

Hice un formulario el cual al seleccionar un dato en un cuadro combinado este es buscado y me presenta los resultados en varias label, mi problema es que uno de esos datos depende de la funcion now() y quiero que ya una ves que lo busco este se actualice cada segundo, hasta ahora solo me busca el dato pero este permanece estatico

'busca tiempo transcurrido
valorbuscado5 = Application.WorksheetFunction.VLookup(Val(valor), rango, 7, 0)

Me.Label17.Caption = Format(valorbuscado5, "hh:mm:ss")

Necesito que ese caption se actualice cada segundo despues de la busqueda

1 respuesta

Respuesta
2

H o l a: Te anexo el código para que lo adaptes a tu formulario.

Estoy suponiendo que la macro se debe ejecutar cuando cambias algo en el combobox1. También supongo que "rango" es un objeto con el rango de unas celdas, y por último, también supongo que el formulario se llama Userform1.

Private Sub ComboBox1_Change()
    'busca tiempo transcurrido
    Set rango = Range("A2:G6")
    valor = ComboBox1
    If valor = "" Then Exit Sub
    valorbuscado5 = Application.WorksheetFunction.VLookup(Val(valor), rango, 7, 0)
    If IsError(valorbuscado5) = False Then
        Me.Label17.Caption = Format(valorbuscado5, "hh:mm:ss")
        Call ActualizarHora
    End If
End Sub

Entonces funciona de la siguiente manera. 

Cada vez que cambias el combobox1 se realiza la búsqueda de la variable "valor" en el "rango", si lo encuentra entonces se actualiza el label17; y se ejecuta la macro ActualizarHora.

Pon la siguiente macro en un módulo:

Sub ActualizarHora()
'Por.Dante Amor
    If UserForm1.ComboBox1 = "" Then Exit Sub
    UserForm1.Label17.Caption = Format(Now(), "hh:mm:ss")
    Application.OnTime Now + TimeValue("00:00:01"), "ActualizarHora"
End Sub

Cambia en las macros "UserForm1", "combobox1" , por tus datos.

El reloj se detendrá cuando borres el dato del combobox1.


'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas