Como chegar código vba em um módulo com janelas de código
Uma da maneira em que você pode obter o código do VBA em um módulo VBA é usar o gravador de macro Excel para gravar suas ações e convertê-los em código VBA. No entanto, nem todas as tarefas podem ser traduzidas para VBA, gravar uma macro. Você também pode inserir o código diretamente ou copiar o código de um módulo e colá-lo em outro.
Conteúdo
Video: Curso de VBA - Aula 6 - A janela de código
Inserindo e editando texto em um módulo VBA funciona como você poderia esperar. Você pode selecionar, copiar, cortar, colar e fazer outras coisas para o texto.
A única linha de código VBA pode ser tão longo como você gosta. No entanto, você pode querer usar o caractere de continuação de linha para quebrar longas linhas de código. Para continuar a uma única linha de código (também conhecido como um declaração) A partir de uma linha para a seguinte, termina a primeira linha com um espaço seguido por um sublinhado (_). Em seguida, continue a declaração sobre a próxima linha. Aqui está um exemplo de uma única instrução dividida em três linhas:
Selection.Sort Key1: = Range ("A1"), _Order1: = xlAscending, Cabeçalho: = xlGuess, _Orientation: = xlTopToBottom
Esta declaração iria realizar da mesma maneira se fosse digitado em uma única linha (sem caracteres de continuação de linha).
VBE tem vários níveis de desfazer e refazer. Se você excluiu uma declaração de que você não deve ter, use o botão Desfazer na barra de ferramentas (ou pressione Ctrl + Z) até que a instrução aparece novamente. Depois de desfazer, você pode usar o botão Refazer para realizar as mudanças que você desfeitas.
Pronto para entrar algum código real, ao vivo? Tente os seguintes passos:
Criar um novo livro no Excel.
Pressione Alt + F11 para ativar VBE.
Clique no nome da nova pasta de trabalho na janela do projeto.
Escolha Inserir → Módulo para inserir um módulo VBA no projeto.
Video: #010 - VBA - Numeração Automática
Digite o seguinte código no módulo:
Sub GuessName () Dim Msg como StringDim Ans Como LongMsg = "É o seu nome " & Application.UserName & "?"Ans = MsgBox (Msg, vbYesNo) Se Ans = vbNo Then MsgBox "Oh, não importa."Se ans = vbYes Then MsgBox "Eu devo ser vidente!"End Sub
Verifique se o cursor está localizado em qualquer lugar dentro o texto digitado e, em seguida, pressione F5 para executar o procedimento.
F5 é um atalho para o comando Executar → Executar Sub / UserForm.
Video: Curso Excel VBA Aula 1
Quando você digitar o código listado na etapa 5, você pode notar que VBE faz alguns ajustes ao texto inserido. Por exemplo, depois de digitar a instrução Sub, VBE insere automaticamente a instrução End Sub. E se você omitir o espaço antes ou depois de um sinal de igual, VBE insere o espaço para você. Além disso, VBE muda a cor e capitalização de algum texto. Estas mudanças são a maneira de manter as coisas limpo e legível do VBE.
Se você seguiu as etapas anteriores, você acabou de criar um procedimento Sub VBA, também conhecido como uma macro. Quando você pressiona F5, Excel executa o código e segue as instruções. Em outras palavras, Excel avalia cada declaração e faz o que você disse para fazer. Você pode executar essa macro qualquer número de vezes - embora ele tende a perder o seu apelo após algumas dezenas de execuções.
Esta macro simples usa os seguintes conceitos:
Definindo um procedimento Sub (a primeira linha)
declarar variáveis (as instruções Dim)
A atribuição de valores às variáveis (Msg e Ans)
Concatenar (unir) uma string (usando o & operador)
Utilizando uma função interna do VBA (MsgBox)
Usando constantes incorporados VBA (vbYesNo, vbNo, e vbYes)
Usando um If-Then construir (duas vezes)
Terminar um procedimento Sub (a última linha)
Como mencionado, você pode copiar e colar o código em um módulo VBA. Por exemplo, um procedimento Sub ou Function que você escreve para um projeto também pode ser útil em outro projeto. Em vez de perder tempo reinserir o código, você pode ativar o módulo e usar os procedimentos normais de copiar e colar (Ctrl + C para copiar e Ctrl + V para colar). Depois de colar o código em um módulo VBA, você pode modificar o código, se necessário.