Repetir macro periódicamente en excel

Necesito realizar una macro que se ejecute desde la apertura de un archivo, cada cierto tiempo, por ej. 5 seg., hasta el cierre del mismo.
Respuesta
1
Te envío un código para ejecutar la acción que necesitas cada n segundos según lo establezcas.
Ve al Editor de Visual Basic de Excel.
(Menu->Herramientas->Macro->Editor de Visual Basic) ó
simplemente oprime Alt + F11.
Doble click en el Objeto ThisWorkbook y pega el siguiente código
Private Sub Workbook_Open()
Dim ComienzoSeg As Single
Dim FinSeg As Single
Dim R As Double
R = 0
TIEMPO_ESP_MAX = 5 'ESTABLECES EL TIEMPO DE ESPERA EN SEGUNDOS
Do While R = O
'
ComienzoSeg = Timer
FinSeg = ComienzoSeg + TIEMPO_ESP_MAX
Do While FinSeg > Timer
DoEvents
TChecq1 = Round(FinSeg - Timer, 0)
If TChecq1 <> TChecq2 Then
TChecq2 = TChecq1
End If
If ComienzoSeg > Timer Then
FinSeg = FinSeg - 24 * 60 * 60
End If
Loop
'AQUI COLOCAS EL CODIGO QUE QUIERES EJECUTAR CADA n SEGUNDOS
Loop
End Sub
Guarda el libro y vuélvelo a abrir. Cada vez que lo abras la macro se ejecutara automáticamente cada n segundos que establezcas.
Gracias por tu pronta respuesta, pero quisiera saber si podrás indicarme cómo hago para detener la ejecución de la macro, estando el libro abierto, según si una celda de la Hoja1, por ej. toma el valor 1 (no se si difiere si se ingresa ese valor manualmente o como resultado de una fórmula).
Sds
Puedes hacer que se detenga de esa manera cambiando solo la linea del
Do While R = O, asi:
Do While Sheets("Hoja1").Range("A1").Value <> "1"
Cambia la Celda la cual necesitas Validar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas