Introdução ao VBA Exit Sub

Sair de Sub parece terminar com a subcategoria pelo nome. Mas, na realidade, o Exit Sub é usado para pular completamente o procedimento sub sem deixar que o código completo seja concluído. Quando aplicamos o Exit Sub entre qualquer código, somente o código antes do Exit sub é executado completamente no VBA Excel. O código após a saída Sub será ignorado e saltará o código inteiro depois disso. O Sub de saída geralmente funciona melhor com o loop Do-While.

Como aplicar o Sub de saída usando o VBA?

Vamos ver os exemplos de Sub Saída no Excel VBA.

Você pode fazer o download deste modelo do VBA Exit Sub Excel aqui - Modelo do VBA Exit Sub Excel

Exemplo # 1 - Sub de saída do VBA

Etapa 1: para aplicar o Exit Sub, precisamos de um módulo. Para isso, acesse a janela VBA. Clique na aba do menu Inserir, obteremos a lista, a partir daí selecione Módulo como mostrado abaixo.

Etapa 2: depois disso, um módulo recém-aberto, escreva a subcategoria no nome do Sub de saída do VBA ou em qualquer outro nome, como mostrado abaixo.

Código:

 Sub VBA_ExitSub1 () End Sub 

Etapa 3: defina uma variável Dim com qualquer nome, digamos. E dê a ele a função Inteiro, como mostrado abaixo.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro End Sub 

Etapa 4: Agora abra um loop do While, como mostrado abaixo.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro ao mesmo tempo End Sub 

Etapa 5: Entre Faça Enquanto escrevemos um código simples de comparação. Vamos fazer a adição da variável A com +1. O que significa Adição DO para A com seu próprio valor +1. E execute-o até obtermos o valor +1 para a variável A.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro Faça A = A + 1 Enquanto End Sub 

Etapa 6: Agora, o quanto queremos adicionar +1 a A será definido na condição Loop While . Diz que DO Loop será executado seguindo a condição de A + 1, enquanto A for menor que 100.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro Faça A = A + 1 loop enquanto A <100 End Sub 

Etapa 7: Agora precisaremos de uma caixa de mensagem (que é opcional) para ver a saída do loop Do While . Para isso, insira MsgBox e dê-o à variável A.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro Faça A = A + 1 Loop enquanto A <100 MsgBox A End Sub 

Etapa 8: Agora compile o código pressionando a tecla F8 para ver se há algum erro no código ou não. Posteriormente, execute o código inteiro pressionando o botão Reproduzir localizado abaixo da barra de menus, como mostrado abaixo. Veremos que a caixa de mensagem nos deu a saída como 100 . O que significa que um valor de A é menor que 100 e a fórmula que definimos no DO Loop diz que o valor de A é A + 1. Portanto, a resposta está chegando a 100.

Etapa 9: Agora, para aplicar o Exit Sub no loop Do While executado, precisamos adicionar a instrução Exit Sub antes do início do Do Loop ou depois de definirmos a variável A, como mostrado abaixo.

Código:

 Sub VBA_ExitSub1 () Dim A como número inteiro Sair Sub Faça A = A + 1 Loop enquanto A <100 MsgBox A End Sub 

Agora novamente compile o código e execute, se nenhum erro for encontrado.

Vamos observar que não encontramos nenhuma saída. Isso ocorre porque a execução do código foi concluída, mas pulou para o loop Do While, não fornecendo saída em uma caixa de mensagem.

Exemplo # 2 - Sub de saída do VBA

Vamos considerar outro exemplo. Neste exemplo, veremos como o Exit Sub funciona para ignorar a alteração da cor da fonte. Pois temos algum texto na célula C3, como mostrado abaixo. Como podemos ver, o texto está na cor em branco padrão.

Etapa 1: para isso, abra um novo módulo e atribua a subcategoria no nome da sub VBA Exit ou em qualquer outro nome adequado, conforme sua necessidade.

Código:

 Sub VBA_ExitSub2 () End Sub 

Etapa 2: selecione a célula do intervalo que contém o texto. Aqui a nossa célula de alcance será a célula C3.

Código:

 Sub VBA_ExitSub2 () Range ("C3"). Selecione End Sub 

Etapa 3: Como precisamos alterar a cor da fonte, na próxima linha de código, selecione a função Fonte e Cor simultaneamente, como mostrado abaixo.

Código:

 Sub VBA_ExitSub2 () Range ("C3"). Selecione Selection.Font.Color = End Sub 

Etapa 4: Agora escolha a cor da fonte que queremos alterar. E a seleção de cores começará com vb conforme a configuração do VBA. Aqui, estamos selecionando Vermelho, como mostrado abaixo.

Código:

 Sub VBA_ExitSub2 () Range ("C3"). Selecione Selection.Font.Color = vbRed End Sub 

Etapa 5: Agora compile todo o código de uma só vez, pois o código é bem pequeno e execute-o. Veremos que a cor da fonte na célula C3 agora foi alterada para Cor vermelha do padrão Preto .

Etapa 6: Agora, para aplicar o Sub de saída aqui no código de mudança de cor da fonte, coloque a instrução Exit Sub antes da linha de código de seleção de células do intervalo ou entre a seleção de células do intervalo ( ) e a cor da fonte ( ), como mostrado abaixo.

Código:

 Sub VBA_ExitSub2 () Range ("C3"). Selecione Sair da Sub Selection.Font.Color = vbRed End Sub 

Etapa 7: Agora, execute novamente o código. Desta vez, observaremos que a cor da fonte do texto na célula C3 não é alterada para a cor vermelha, pois foi alterada anteriormente antes de colocar a instrução Exit Sub .

Etapa 8: podemos converter a instrução Exit Sub adicionada em texto inserindo uma única citação invertida, como mostrado abaixo. Ao fazer isso, ele será convertido em texto . Depois disso, a cor dessa linha será alterada para Cor verde.

Código:

 Sub VBA_ExitSub2 () Range ("C3"). Selecione 'Sair da Sub Selection.Font.Color = vbRed End Sub 

Profissionais do VBA Exit Sub

  • Isso economiza tempo ao reescrever um código repetidamente.
  • Podemos pular a parte do código que não queremos executar.
  • É aplicável em todos os tipos de funções.
  • Isso é bastante útil ao trabalhar em grandes linhas de código nas quais precisamos pular ou pular alguma linha de código.

Coisas para lembrar

  • O VBA Exit Sub funciona com todos os tipos de códigos e funções, mas funciona melhor com todos os tipos de loop, especialmente o loop DO-WHILE.
  • Ele salta da parte do código e executa apenas o código anterior à Saída Sub.
  • Sair e End Sub, ambos são diferentes.
  • Ele pula e salta do código sem executá-lo completamente. E o código de meia execução não fornece nenhuma saída adequada.

Artigos recomendados

Este é um guia para o VBA Exit Sub. Aqui discutimos como usar o Excel VBA Exit Sub, juntamente com alguns exemplos práticos e modelo de excel para download. Você também pode consultar nossos outros artigos sugeridos -

  1. Como usar o VBA While Loop?
  2. VBA Remover Duplicatas
  3. Noções básicas sobre tipos de dados VBA
  4. Sono do VBA com exemplos

Categoria: