Como usar o sub de saída do vba no excel?

VBA Exit Sub é uma instrução que você usa para sair de um subprocedimento ou função. Como você sabe, cada linha é uma macro que roda uma após a outra, e ao adicionar o VBA “Exit Sub”, saia do procedimento sem executar o resto do código que vem depois dele. Isso funciona melhor com loops e com a caixa de mensagem .

Usando a subinstrução Exit no VBA

  1. Primeiro, decida em qual linha você deseja adicionar o “Exit Sub”.
  2. Depois disso, verifique a estrutura do código que será executado quando você executar o código .
  3. Em seguida, entre em “Sair Sub”.
  4. Em última análise, é melhor ter um comentário descrevendo por que você está usando a instrução “Exit Sub”.
vba-exit-sub-instrução

Nota: Em um procedimento de função VBA, a instrução que você deve usar é “Exit Function”.

Use Exit Sub com uma caixa de mensagem e uma caixa de entrada

Suponha que você queira obter a entrada do usuário com uma caixa de entrada e sair do procedimento se a resposta do usuário não for um número (considere o exemplo a seguir).

No código acima você tem ISNUMERIC que verifica o valor inserido na caixa de entrada se é um número ou não, e se esse valor não for um número ele usa a instrução Exit Sub para completar o procedimento após exibir uma caixa de mensagem.

 Sub vba_exit_sub_example() If IsNumeric(InputBox("Enter your age.", "Age")) = False Then MsgBox "Error! Enter your Age in numbers only." Exit Sub Else MsgBox "Thanks for the input." End If End Sub

Em caso de erro Sair Sub

Uma das melhores coisas sobre “Exit Sub” é que você pode usá-lo para sair do procedimento quando ocorrer um erro. Abaixo está o código que divide um número por zero que retorna um “Runtime Error ’11′” e interrompe a execução.

Aqui você pode usar a instrução GoTo para criar um manipulador de erros com o “Exit Sub” para sair do procedimento (considere o código a seguir).

 Sub vba_exit_sub_on_error() On Error GoTo iError Range("A1") = 10 / 0 iError: MsgBox "You can't divide with the zero." & _ "Change the code." Exit Sub End Sub

No código acima você tem um manipulador de erros, “iError” com uma caixa de mensagem, depois a instrução “Exit Sub”. Quando ocorre um erro durante o cálculo, a instrução goto passa para o manipulador de erros ( VBA Error Handling ) e sai do procedimento.

Adicione um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *