Compartir a través de


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

expresión. 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 está establecido en EarliestTime + 30 y Microsoft Excel no está en el modo Listo, Copiar, Cortar o Buscar en EarliestTime porque se está ejecutando otro procedimiento, Excel esperará 30 segundos para 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

Use Now + TimeValue(time) para programar algo que se va a ejecutar cuando haya transcurrido una cantidad específica de tiempo (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 Schedule en False para borrar un procedimiento establecido anteriormente con los mismos valores Procedure y EarliestTime .

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

Ejemplo:

Este ejemplo se ejecuta my_Procedure 15 segundos a partir de ahora.

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

En este ejemplo se ejecuta my_Procedure a las 17:00.

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.