No se especifica qué versión de Excel o qué versión de Windows (o Macintosh) así que voy a especificar que estoy usando Excel 2010 de Office de 32 bits en Windows 7 Ultimate 64- poco ...
Si desea mantener el libro abierto y ejecutar código en un momento determinado, más adelante, entonces prueba este ..
Inserta un nuevo módulo de código en tu proyecto -o bien- usa uno que ya tengas en tu proyecto.
Crear una subrutina planificador como se muestra a continuación:
Sub Scheduler()
'-- RUNS SUB(S) (OR FUNCTIONS) AT TIME SCHEDULED.
Application.OnTime TimeValue("11:46:40"), "TheScheduledSub"
End Sub
Crear una subrutina (o función) que desea ejecutar. Aquí está uno para este ejemplo:
Sub TheScheduledSub()
Debug.Print "TheScheduledSub() has run at " & Time
End Sub
Scheduler()
ejecutará TheScheduledSub()
en el momento exacto especificado en el interior Scheduler()
, definido por TimeValue
. Puede leer más sobre TimeValue
here.
Probablemente podría pasar el valor de tiempo que desea que el subprograma Scheduler() ejecute su (s) sub (s) o función (es) como un parámetro en el sub.
Probablemente podría ejecutar un sub 5 horas a partir de ahora, digamos. ES DECIR. Application.OnTime Now + TimeValue ("05:00:00"), "TheScheduledSub"
o tal vez dentro de un día? Juega con eso.
Obtuve dos subs para ejecutar en diferentes momentos. También intenté ejecutar dos al mismo tiempo. Mi experiencia con dos subs diferentes ejecutándose al mismo tiempo fue que el segundo sub parecía ejecutarse antes que el primero, pero no lo he explorado completamente. Entonces, YMMV.
No creo que Excel VBA sea capaz de múltiples hilos, así que tenlo en cuenta. Estoy ejecutando Excel 2010 de 32 bits desde el paquete de Office. No estoy seguro de cómo se comporta Office Excel de 64 bits o, para el caso, cualquier otra versión o plataforma.De todos modos, Excel VBA multihilo/multitarea no es lo que pediste, pero debe ser considerado.
Al ver esta pregunta y jugar con lo anterior, ¡puedo pensar en algunas ideas que quiero probar!
Esto podría ayudar https://stackoverflow.com/questions/22771185/how-to-set-recurring-schedule-for-xlsm-file-using-windows-task -scheduler – Justin