Método Application.OnTime (Excel)

Programa la ejecución de un procedimiento a una hora especificada, ya sea a una hora específica o después del transcurso de un período de tiempo específico.

Sintaxis

más sencilla.OnTime (EarliestTime, Procedure, LatestTime, Schedule)

expresión Variable que representa un objeto Application.

Parámetros

Nombre Obligatorio/opcional Tipo de datos Descripción
EarliestTime Obligatorio Variant Hora a la que se desea ejecutar este procedimiento.
Procedure Obligatorio String Nombre del procedimiento que se desea ejecutar.
LatestTime Opcional Variant La última hora a la que se puede ejecutar el procedimiento. Por ejemplo, si LatestTime se establece en EarliestTime + 30 y Microsoft Excel no está en modo Listo, Copiar, Cortar o Buscar al principio porque se está ejecutando otro procedimiento, Excel esperará 30 segundos a que se complete el primer procedimiento. Si Excel no está en modo Listo en 30 segundos, el procedimiento no se ejecutará. Si se omite este argumento, Excel esperará hasta que se pueda ejecutar el procedimiento.
Schedule Opcional Variant True para programar un nuevo procedimiento OnTime. False para borrar un procedimiento establecido previamente. El valor predeterminado es True.

Comentarios

Se usa Now + TimeValue(time) para programar la ejecución de algo cuando haya transcurrido una cantidad de tiempo específica (contando a partir de ahora). Use TimeValue(time) para programar la ejecución a una hora determinada.

El valor de EarliestTime se redondea al segundo más cercano.

Establezca Programación en Falso para borrar un procedimiento previamente establecido con los mismos valores de Procedimiento y EarliestTime.

Procedure no debe tener argumentos y no se puede declarar en una clase personalizada o formulario.

Ejemplo

Este ejemplo se ejecutará my_Procedure dentro de 15 segundos.

Application.OnTime Now + TimeValue("00:00:15"), "my_Procedure"

Este ejemplo se ejecuta my_Procedure a las 5 p.m.

Application.OnTime TimeValue("17:00:00"), "my_Procedure"

En este ejemplo se cancela el valor de OnTime del ejemplo anterior.

Application.OnTime EarliestTime:=TimeValue("17:00:00"), _ 
 Procedure:="my_Procedure", Schedule:=False

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.