Temporizador

Tempo de leitura: menos de 1 minuto

Como fazer uma macro rodar a cada 15 minutos  ?

No Excel existe um Application expecifica para isso que é a OnTime. Veja a sintaxe abaixo:

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

O que essa Application ira realizar é executar uma macro a cada 15 minutos. Isso é muito util para quem tem trabalho de atualizar algum relatorio em Excel em um determinado intervalo de tempo.

A lógica da nossa aplicação abaixo é muito simples, quando abrimos a pasta de trabalho, chamamos pela primeira vez o procedimento necessário para atualizar os dados. Nesse procedimento, também adicionamos um código para chamar de volta o próprio procedimento 15 minutos depois. Assim, enquanto a pasta de trabalho estiver aberto, o procedimento continuará a chamar-se a cada 15 minutos.

[sourcecode highlight=”” language=”vb”]
‘ Coloque este procedimento no módulo ThisWorkbook
Private Sub Workbook_Open()

‘Chama o procedimento AtualizaData quando o WorkBook é aberto
Call AtualizaData

End Sub

‘ Adcione este novo procedimento em um novo modulo
Public Sub AtualizaData()

Debug.Print "Data atualizada em " & Now

‘ Aqui é onde nós colocamos tudo o necessário para atualizar os dados

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

End Sub
[/sourcecode]

Mesmo que se parece com um loop infinito, isso não é um problema para Excel quando usamos a função Application.OnTime. A programação irá parar automaticamente quando o workbook for fechado.

Pratiquem …

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *