Excel VBA – Pausa (Break/Stop) e Retomada de uma Macro
Este tutorial demonstrará como pausar (interromper) e retomar uma macro no Excel.
A possibilidade de pausar uma macro enquanto se testa o código VBA que foi escrito é uma maneira útil de descobrir onde pode haver algum “erro” em nosso código. Há várias maneiras de interromper a execução da macro e retomá-la do ponto em que foi interrompida.
A Combinação de Teclas Control e Break
Se mantivermos pressionada a tecla Control e depois pressionarmos a tecla Pause/Break quando o código VBA estiver em execução, o código será interrompido imediatamente com uma mensagem de depuração avisando que a execução da macro foi interrompida.
Em seguida, podemos pressionar o botão Continuar na caixa de diálogo que aparece para continuar a executar a macro. Como alternativa, se pressionarmos o botão Debug na caixa de diálogo, a macro destacará a posição em que parou de ser executada. Ao passar o mouse sobre qualquer variável existente, podemos ver o que está armazenado nas variáveis. Isso pode ser muito útil na depuração do nosso código.
Em seguida, podemos clicar no botão Executar na faixa de opções (ou pressionar F5 no teclado) para retomar a execução da macro.
Adição de Pontos de Interrupção à Macro
Antes de iniciar a macro, podemos inserir pontos de interrupção na macro para interrompê-la em linhas de código específicas.
Podemos executar o código clicando no botão Executar na faixa de opções ou pressionando F5 no teclado. A macro será interrompida no ponto de interrupção.
Pressione o botão Executar novamente (a legenda agora indicará Continar) para retomar a macro ou pressione F5.
Pode haver outras ocasiões em que a execução de uma macro VBA precise ser pausada. Isso também pode ser feito usando os métodos Wait e Sleep. Esses métodos são mais usados para atrasar o progresso real da macro do que para depurar o código real.
Por exemplo, esta linha de código atrasará a execução da macro até que se passem mais 5 segundos.
Application.Wait (Now + TimeValue("0:00:05"))