Como criar um timer no Excel

O método Pomodoro – vide este post – precisa de um timer para funcionar.

Há timer no celular, apps, etc, mas é um projetinho interessante para fazer em Excel (alguém tem outras formas de fazer? Sugestões são sempre bem-vindas).

1) Basicamente, o timer utiliza a função Sleep (de dormir). É uma função que não faz nada enquanto não passar o tempo estabelecido.

Por exemplo:

    Sleep (1000) ‘Espera 1000 milisegundos, ou seja, 1 segundo

É uma função do Windows, então é necessário importar a dll. Segue um exemplo de código a seguir, também na planilha anexa.

Public Declare PtrSafe Sub Sleep Lib “kernel32” (ByVal Milliseconds As LongPtr)

Sub teste()

    Sleep (2000) ‘Espera 2000 milisegundos

    executar

End Sub

Sub executar()

    MsgBox (“Teste”)

End Sub

2) Sobre o timer.

A macro lê o número de minutos a esperar. Multiplica por 60 para transformar em segundos.

Depois, manda atualizar o mostrador uma vez por segundo, decrescendo o valor a esperar.

O resto das contas é só para transformar o número de segundos de volta para minutos.

Por exemplo, 244 segundos = 4 minutos e mais 4 segundos.

Divido 244 por 60 e pego a parte inteira, utilizando um arrendondar para baixo.

intMin = Math.Round((Nminutos * 60 – counter) / 60 – 0.49999999, 0)

Se faltam 4 minutos, e 4*60 =240, então são 4 segundos para completar o valor original.

Portanto, estabeleça o número de minutos a esperar, ligue o timer, e concentre-se somente no trabalho a ser realizado durante este período.

Vide arquivo https://lnkd.in/eBxyAQZ.