Outras Linguagens / VBA

Criando um timer em VBA

visto por 674 vez(es)

Para determinadas tarefas pode ser necessário que tenha que se esperar um tempo para continuar a execução da macro e até de um tempo de espera para o usuário responder a determinada questão. Para esse tipo de problema a solução é simular um timer via código.

Este código, simula um timer para execução de macros determinando um tempo de intervalo em segundos, para definir o tempo de intervalo, basta alterar a constante IntervaloSegundos no código.
Copiar o Código para a Área de Transferência
Aumentar fonte
Diminuir fonte
Aumentar a altura da caixa de código
Diminuir a altura da caixa de código
Visualizar código em modo de edição
Dim Alarme
Const IntervaloSegundos = 5 * 60 ' 5 minutos de intervalo
Sub Iniciar()
Alarme = Now + TimeSerial(0, 0, IntervaloSegundos)
Application.OnTime EarliestTime:=Alarme, procedure:="Macro1", schedule:=True
End Sub


Sub Macro1()
'As suas rotinas
MsgBox "Olá!!! voltarei pelas " & Format(Alarme, "hh:mm:ss"), vbInformation, "Timer em Vba"

Call Iniciar
End Sub


Sub Parar()
On Error Resume Next
Application.OnTime EarliestTime:=Alarme, procedure:="Macro1", schedule:=False
End Sub 

Sim   Não   Este código foi útil para você?
NotaComentárioMembro
Ainda não foi enviado nenhum comentário.
Regras:
Os comentários seguem as seguintes regras:
  • Todos os comentários são enviados por membros cadastrados no site.
  • Os comentários serão pré-aprovados, porém a equipe do site revisará o conteúdo de todos os comentários podendo ser invalidados (inclusive a pontuação).
  • Os comentários precisam ter, obrigatóriamente, coerência sobre o conteúdo que será comentado.
  • O membro que atingir 10 comentários invalidados não poderá mais comentar dentro do site. Com isso o membro não poderá mais ganhar pontos com comentários.