Subprocedimento Excel VBA
SUB no VBA também é conhecido como uma sub-rotina ou um procedimento que contém todo o código, é uma instrução embutida no VBA e quando usada, fornece automaticamente a instrução de end sub e a parte do meio é usada para codificação, a sub instrução pode ser público e privado e o nome do subprocedimento é obrigatório no VBA.
Sub significa Sub Procedimento em VBA. Subprocedimentos são usados para realizar um conjunto específico de tarefas fornecidas na forma de código. Ele executa apenas a tarefa mencionada no código de acordo com a linguagem VBA, mas não retorna nenhum tipo de valor.

Como escrever procedimentos secundários do VBA?
Para escrever códigos de subprocedimento, é importante compreender a estrutura do subprocedimento. Abaixo está a estrutura
Sub (Nome do procedimento) (Parâmetros) (O que precisa ser feito?)) End Sub
Para iniciar o subprocedimento, precisamos usar a palavra “Sub” e dar um nome para o Sub como um nome de procedimento. O nome do procedimento nada mais é do que o nosso nome de macro. No subprocedimento VBA, geralmente não temos parâmetros entre parênteses.
Depois de escrever o nome do procedimento Sub, precisamos escrever as tarefas que precisam ser realizadas. Em seguida, vem a instrução End, ou seja, End Sub.
Exemplo # 1 - Subprocedimento Simples
Agora dê uma olhada nos métodos simples de escrita de procedimento de sub-rotina.
Passo 1: Inicie a palavra “Sub” no módulo.

Etapa 2: Agora dê um nome ao nome da macro ou ao nome do procedimento.

Passo 3: Após dar o nome ao subprocedimento, basta apertar a tecla Enter, ele aplicará automaticamente o comando final.

Agora podemos ver duas coisas aqui, uma é o início e a outra é o fim do subprocedimento. Para melhor compreensão, podemos chamá-lo de “Cabeça” e “Cauda”.

Entre o início e o fim da macro, precisamos escrever nosso código para realizar alguma tarefa.
Exemplo # 2 - Tarefa de sub-rotina simples
Ok, agora veremos como realizar alguma ação simples aqui.
Suponha que você deseja inserir o valor “Excel VBA” na célula A1.
Etapa 1: inicie o subprocedimento usando os métodos acima.
Código:
Sub Action1 () End Sub

Passo 2: Para acessar a célula A1, precisamos usar a palavra RANGE.
Código:
Sub Action1 () Intervalo (End Sub

Passo 3: Está perguntando a qual cell1 você quer se referir? Nesse caso, é uma célula A1.
Código:
Sub Action1 () Range ("A1") End Sub

Passo 4: Precisamos inserir o valor “Excel VBA,” então selecione a propriedade VALUE colocando um ponto após o intervalo.
Código:
Sub Action1 () Intervalo ("A1"). Valor End Sub

Ao começar a digitar a palavra VALUE, você verá muitas opções, e essas opções são chamadas de lista IntelliSense, que prevê com base no que você está digitando. É assim que as fórmulas aparecerão na planilha quando começarmos a digitar a fórmula.
Etapa 5: depois de selecionar VALOR, coloque um sinal de igual e insira o valor entre aspas duplas como “Excel VBA”.
Código:
Sub Ação1 () Intervalo ("A1"). Valor = "Excel VBA" End Sub

Então, terminamos.
Agora precisamos executar esta tarefa. Para executar a tarefa, tivemos um retorno. Precisamos executar este código pressionando o botão RUN na janela do editor do Visual Basic.
Também podemos pressionar a tecla de atalho do Excel, colocando o cursor dentro do código da macro.

Assim que você executar o código, obterá o valor “Excel VBA” na célula A1.

Tipos de sub-rotina VBA
Temos mais dois tipos de procedimento Sub, um é Sub-procedimento público e o segundo é Sub-procedimento privado.


As palavras “Público” e “Privado” são modificadores de acessibilidade que nos permitem usá-los subprocedimentos de forma diferente.
- Public Sub Procedure nos permite usar o procedimento em todos os módulos da pasta de trabalho.
- Private Sub Procedure nos permite usar o procedimento apenas no módulo atual, em nenhum outro lugar.
Por exemplo, observe a imagem abaixo do Código Público, que está no Módulo 1.

Agora, no Módulo 2, também posso usar esse subprocedimento.

Action1 é o nome do subprocedimento que usamos no Módulo 1.
No Módulo 2, mencionei-o como “Ação de Chamada1”. Isso significa que, ao executar o subprocedimento, ele executará o subprocedimento Ação1 do Módulo 1.
Subprocedimentos privados não podem ser acessados de um módulo diferente. Precisamos acessá-los apenas do mesmo módulo.