Compartilhar via


Método Application.OnTime (Excel)

Agenda um procedimento para ser executado em um momento especificado no futuro (em uma hora específica do dia ou após um período específico de tempo).

Sintaxe

expressão. OnTime (EarliestTime, Procedure, LatestTime, Schedule)

expressão Uma variável que representa um Aplicativo objeto.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
EarliestTime Obrigatório Variant A hora em que você deseja executar este procedimento.
Procedure Obrigatório String O nome do procedimento a ser executado.
LatestTime Opcional Variant A hora mais recente na qual o procedimento pode ser executado. Por exemplo, se LatestTime estiver definido como EarliestTime + 30 e o Microsoft Excel não estiver no modo Pronto, Copiar, Cortar ou Localizar no EarliestTime porque outro procedimento está em execução, o Excel aguardará 30 segundos para que o primeiro procedimento seja concluído. Se o Excel não estiver no modo Pronto dentro de 30 segundos, o procedimento não será executado. Se esse argumento for omitido, o Excel aguardará até que o procedimento possa ser executado.
Schedule Opcional Variant True para agendar um novo procedimento OnTime. False para limpar um procedimento definido anteriormente. O valor padrão é True.

Comentários

Use Now + TimeValue(time) para agendar algo a ser executado quando um tempo específico (contando a partir de agora) tiver decorrido. Use TimeValue(time) para programar algo para ser executado em uma hora específica.

O valor de EarliestTime é arredondado para o segundo mais próximo.

Defina Agendar como False para limpar um procedimento definido anteriormente com os mesmos valores Procedure e EarliestTime .

Procedimento não pode receber argumentos e não pode ser declarado em uma classe ou formulário personalizado.

Exemplo

Este exemplo é executado my_Procedure 15 segundos a partir de agora.

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

Este exemplo é executado my_Procedure às 17h.

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

Este exemplo cancela a configuração OnTime do exemplo anterior.

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

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.