Rutina en segundo plano

¿Es posible hacer una macro que se ejecutara en segundo plano mientras que se sigue trabajando en otra cosa?
Por ejemplo ¿podría hacer un reloj que se actualizara en una celda hasta los segundos, mientras que yo trabajo en esa hoja?

1 Respuesta

Respuesta
1
Puedes hacerlo si usas un control timer.
Puedes bajarlo de http://www.enhanceddatasystems.com/ED/Pages/ExcelTimer.htm
Luego haces lo siguiente
En tu proyecto insertas un UserForm
Luego en el editor VBA vas a herramientas... Referencias y agregas un a referencia al control. Para hacerlo en el cuadro de diálogo referencias, Examinar... y buscas la ubicación donde guardaste el control... Aceptar.
Ahora Click derecho en la caja de herramientas del UserForm... Agregar Controles y Agregas el control. Lo pones en el formulario, doble click en el control timer para abrir la ventana de código y pones lo siguiente:
Private Sub Timer1_Timer()
Actualizar_Hora
End Sub
y agreagas lo siguiente en el evento Open del Libro
Private Sub Workbook_Open()
Load UserForm1
UserForm1.Timer1.Enabled = True
End Sub
Ahora Insertas un Módulo y agregas:
Public Sub Actualizar_Hora()
Range("A1") = Hour(Now) & ":" & Minute(Now) & ":" & Second(Now)
'Suponiendo que en A1 es donde quieres mostrar la hora.
End Sub
Listo. Yo lo ensaye y funcionó.
¿Hola, Funcionó?
Saludos
Funcionó perfectamente. Perdona mi tardanza pero no me decidía a instalar ese módulo porque no lo había hecho nunca.
Pero veo que va bien... aunque yo ponía lo del reloj a modo de ejemplo... lo que quería era saber si en general yo podría hacer cualquier macro que actuara de esa manera (en segundo plano).
Ahora la duda que me surge en esto del reloj... si hago una hoja que lo contenga, ¿funcionará en otro ordenador sin instalar nada, ni el VBAtimer?
Gracias por tu tiempo :)
Gracias, contaré contigo
Desafortunadamente VBA no posee compilador, por lo tanto cualquier OCX o DLL que no este por defecto en el sistema operativo, deben ser adicionadas manualmente en el equipo donde se copie el libro. En este caso, además del control, en el equipo debe existir la librería runtime de Visual basic.
Si tienes más dudas escríbeme

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas