Você está na página 1de 19

Autoria: Família Carielo

EXCEL COM VBA – BÁSICO

Com certeza, você já usou bastante pelo menos alguns dos aplicativos da Microsoft mais
conhecidos, como Word, Excel, Power Point e o Access. Mas, talvez não soubesse que esses
aplicativos apresentam a linguagem de programação VBA (Visual Basic for Applications ou Visual
Basic para Aplicativos) instalada dentro deles.

Excel, juntamente com outros membros do Microsoft Office, inclui a linguagem VBA
(sem custos extras). Resumidamente, VBA é uma ferramenta que pessoas como você e eu usam
para desenvolver programas que controlam o Excel. Através dessa linguagem de programação
desenvolvida pela Microsoft, é possível resolver os problemas mais facilmente e explorar
recursos adicionais do programa.

INTERFACE
A área para trabalhar com a linguagem de programação VBA, por padrão, fica oculta no
Excel. Diante disso, ensinaremos agora os passos para você exibi-la.

1º Passo: Abra o Excel.

2º Passo: Clique em Arquivo.

Clique Aqui

3º Passo: Clique em Opções.

Clique Aqui

4º Passo: Ao abrir a janela “Opções do Excel”, clique em Personalizar Faixa de Opções.

_______________________________________________________________________________
1
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

Clique Aqui

5º Passo: Em seguida, ative a opção Desenvolvedor, de modo que fique como apresentado
abaixo.

Deverá ficar assim

6º Passo: Clique em OK.

7º Passo: Observe que agora foi exibida a guia Desenvolvedor. Será nela onde trabalharemos a
partir de agora.

Clique Aqui

_______________________________________________________________________________
2
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

CRIANDO A PRIMEIRA FUNÇÃO


1º Passo: Clique em Inserir e, em seguida, em Módulo.

Clique Aqui

2º Passo: Em seguida, clique em Inserir e depois em Procedimento.

Clique Aqui

3º Passo: Para criarmos uma função, clique no campo Nome, digite “Subtrair” e, em Tipo,
modifique para “Função”.

Digite Aqui

Clique Aqui

Deverá estar assim:

_______________________________________________________________________________
3
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

4º Passo: Clique em OK.

Deverá estar assim:

Observação: Perceba que automaticamente já nos foi apresentada a estrutura da


função. Vale ressaltar que “Subtrair” corresponde ao nome da função e a expressão End
Function é usada para indicar o fim da estrutura da função.

5º Passo: Digite no corpo da função a expressão Subtrair = x – y. Além disso, determine x e y


como argumentos da função criada.

Deverá ficar assim:

6º Passo: Em seguida, clique em Exibir Microsoft Excel (Alt + F11).

Clique Aqui

_______________________________________________________________________________
4
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

7º Passo: Na célula A1, digite 800, por exemplo, e na célula B1, 100.

8º Passo: Na célula C1, digite =Subtrair(A1;B1)

Observação: Note que você está usando uma função criada por você mesmo. O objetivo
dessa parte da aula não é aprender como subtrair no Excel porque isso é bastante simples e não
precisaria de uma função criada por você para isso. A ideia aqui é explicar de forma fácil como
criar funções no VBA. Depois de entender esse exemplo simples, ficará muito mais tranquilo
para criar outras funções que você desejar.

9º Passo: Pressione Enter.

Deverá estar assim:

Note que a sua função calculou corretamente.

10º Passo: Clique na célula C1 e edite para que a operação seja o valor de B1 menos o valor de
A1, ao invés do contrário, como antes.

Deixe assim

Deverá estar assim:

SALVANDO O SEU ARQUIVO COM PROGRAMAÇÃO VBA


Para salvar o seu arquivo com sua nova função no VBA, siga os passos abaixo:

1º Passo: Clique em Arquivo.

_______________________________________________________________________________
5
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

2º Passo: Clique em Salvar como.

Clique Aqui

3º Passo: Escolha o local em que deseja salvar e, após isso, digite o nome do arquivo que desejar.
Não clique OK ainda.

4º Passo: Em Tipo, diferentemente de planilhas normais do Excel que você deixa habilitado Pasta
de Trabalho do Excel (*xlsx), selecione a opção Pasta de Trabalho Habilitada para Macro do Excel
(*.xlsm).

Clique Aqui

Observação: É preciso escolher o tipo Pasta de Trabalho Habilitada para Macro do Excel
para que o Excel reconheça que existe um algoritmo dentro da planilha.

_______________________________________________________________________________
6
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

INSERINDO FUNÇÕES NA GUIA FÓRMULAS


1º Passo: Clique na guia Fórmulas e, em seguida, em Inserir Função.

Clique Aqui

2º Passo: Ao abrir a janela “Inserir Função”, clique na setinha ao lado de Mais Recentemente
Usada para selecionar uma outra categoria. Escolha a opção Definido pelo Usuário.

Clique Aqui

Depois, clique aqui

3º Passo: Clique em OK.

4º Passo: Note que apareceu a função definida por você. Mantenha selecionada a função
Subtrair e, em seguida, clique em OK.

Clique Aqui

_______________________________________________________________________________
7
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

5º Passo: Perceba que abriu a janela “Argumentos da função”. No campo X, digite B1 e no


campo Y, digite A1.

6º Passo: Note na região inferior da janela a frase “Resultado da fórmula = -700”. Assim, o
resultado foi como esperado.

7º Passo: Clique em OK.

Deverá estar assim:

Perceba o resultado ao
usar a função Subtrair

FORMULÁRIO NO VBA

Começaremos desenvolvendo um formulário bem simples apenas para você entender o


que é o formulário e como criá-lo. Este formulário realizará contas de multiplicação. Para isso,
iremos criar um formulário e utilizar seus componentes. Para criar um formulário, siga os passos
abaixo:

1º Passo: Clique na guia Desenvolvedor.

2º Passo: Clique em Visual Basic.

_______________________________________________________________________________
8
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

3º Passo: Clique em Inserir.

4º Passo: Clique na opção UserForm, como mostra abaixo.

Clique Aqui

5º Passo: Perceba que abriu a janela “UserForm1”, assim como uma janela “Caixa de
Ferramentas”.

6º Passo: Clique na opção de Caixa de Texto.

Clique Aqui

7º Passo: Desenhe a caixa de texto na janela UserForm1.

Deverá ficar assim:

_______________________________________________________________________________
9
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

Observação: Esta caixa permite que o usuário entre com um texto, como um nome,
endereço, comentário, assim como números.

8º Passo: Insira uma segunda caixa de texto da mesma forma que foi realizada a primeira.

9º Passo: Acesse a caixa de ferramentas, clique no botão de comando e adicione-o à janela


UserForm1.

Clique Aqui
Deverá ficar assim:

10º Passo: Clique no botão criado. Após isso, na Caixa de Propriedades, em Caption, renomeie
de CommandButton1 para Multiplicar.

_______________________________________________________________________________
10
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

Deixe assim

Deverá estar assim:

11º Passo: Para adicionar a ferramenta de rótulo, dê um clique na opção da caixa de


ferramentas, conforme figura abaixo.

Clique Aqui

Observação: Esse rótulo será usado para exibir texto em um formulário.

12º Passo: Posicione o rótulo, conforme apresentado abaixo.

Deixe assim

13º Passo: Na opção Caption, presente na Caixa de Propriedades, modifique o texto “Label1”
para “Resultado”.
_______________________________________________________________________________
11
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

Para que o seu formulário funcione, isto é, execute alguma ação, será preciso
programar. Em outras palavras, você precisará digitar linhas de código, a fim de atingir um
determinado objetivo, executar determinada ação.

Um assunto básico, porém fundamental quando falamos de programação é Variáveis.


Por esse motivo, ensinaremos agora a respeito de variáveis, pois você usará bastante nos seus
programas.

VARIÁVEIS
As variáveis são pequenos espaços de memória que você pode utilizar para armazenar
valores, ou seja, servem para guardar valores temporários na memória. Além disso, as variáveis
apresentam nome e tipo.

Veja o caso abaixo:

Dim var As Integer

Essa linha de código significa que declaramos uma variável com o nome “var” do tipo
inteiro, isto é, poderá guardar valores inteiros na memória.

Veja alguns dos tipos de dados:

• Double é um tipo de dado que serve para armazenar números reais.

• Integer é um tipo de dado que serve para armazenar números inteiros.

• String é um tipo de dado que serve para armazenar caracteres.

Note, ainda, que digitamos “Dim” antes da variável. Dim é uma palavra reservada do
sistema para declarar que o que vem depois dela se refere a uma variável.

Assim, na linguagem do VBA, devemos digitar Dim antes das variáveis quando formos
declará-las.

_______________________________________________________________________________
12
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

FAZENDO O 1º FORMULÁRIO DE USUÁRIO FUNCIONAR


Está na hora de fazer o seu formulário começar a funcionar. Para isso, você precisará
digitar certo código dentro do botão de Multiplicar. Então, siga os passos a seguir.

1º Passo: Dê um duplo clique no botão Multiplicar.

2º Passo: Observe que abriu uma janela, semelhante à apresentada abaixo.

3º Passo: Observe na região esquerda da tela que apareceram as propriedades desse botão.
Em Name, é possível visualizar CommandButton1, ou seja, o mesmo nome em destaque no
passo anterior (2º Passo).

4º Passo: Clique uma vez sobre a caixa de texto superior do seu UserForm.

5º Passo: Em Propriedades, observe o nome da sua caixa de texto. Perceba que o nome é
TextBox1. Memorize-o, pois precisaremos desse nome ao longo da aula.

6º Passo: Clique sobre a segunda caixa de texto e observe a Caixa de Propriedades.

_______________________________________________________________________________
13
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

7º Passo: Em Propriedades, observe o nome da sua caixa de texto. Perceba que o nome é
TextBox2. Memorize-o, pois precisaremos desse nome ao longo da aula.

8º Passo: Clique uma vez no rótulo “Resultado”.

9º Passo: Em Propriedades, observe o nome do seu rótulo (label). Perceba que o nome do rótulo
é Label1, apesar de você ter determinado o título como “Resultado”. Memorize esse nome
Label1, pois precisaremos dele ao longo da aula.

10º Passo: Agora que você está mais familiarizado com diversos termos, clique duas vezes sobre
o botão Multiplicar para começarmos a programar.

11º Passo: Digite as linhas de código em destaque. Note que há uma sequência lógica.

Digite essas linhas de


código

Observação:

Descrição do Código

Dim: palavra separada para indicar que a, partir dela, terá início a declaração de variáveis.

valor 1 e valor 2: representam as duas variáveis que foram declaradas.

Double: a palavra reservada Double é usada para indicar que o tipo da variável declarada é
real.

TextBox1.Text: corresponde à caixa de texto 1. Ao digitarmos valor1 = TextBox1.Text, estamos


dizendo que a variável valor1 receberá a informação digitada na caixa de texto 1.

TextBox2.Text: corresponde à caixa de texto 2. Ao digitarmos valor2 = TextBox2.Text, estamos


dizendo que a variável valor2 receberá a informação digitada na caixa de texto 2.

Label1. Caption: corresponde ao título da label 1, ou seja, ao título do rótulo 1.

_______________________________________________________________________________
14
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

12º Passo: Agora basta clicar no botão Executar ou pressionar F5.

13º Passo: Observe que o programa foi executado.

14º Passo: Em seguida, digite dois números para que eles sejam multiplicados, como
apresentado a seguir.

15º Passo: Clique no botão Multiplicar e observe o resultado.

Deverá estar assim:

Perceba que o resultado deu exatamente como esperado.

16º Passo: Caso deseje, clique em Redefinir para voltar a editar o UserForm.

Clique Aqui

_______________________________________________________________________________
15
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

17º Passo: Clique sobre o nome “Resultado” e desloque o mouse para direita, por exemplo,
para modificar a posição do rótulo, de modo que fique centralizado, como apresentado abaixo.

CRIANDO MAIS UM FORMULÁRIO


A ideia desse exercício é desenvolver um formulário para que o usuário digite o valor da
mensalidade. No caso de o pagamento ser antecipado, deverá ter um desconto de 5% e no caso
de pagar atrasado, o valor da mensalidade deverá ser acrescido de 5%. O resultado de + 5% ou
-5% deverá ser apresentado abaixo dos botões.

1º Passo: Clique em Inserir e, em seguida, em UserForm.

Clique Aqui
2º Passo: Desenvolva o formulário abaixo.

3º Passo: Dê dois cliques sobre o botão Pagando Antecipado.

4º Passo: Digite a programação para cada um dos botões.

Digite esse código referente ao


botão Pagando Antecipado

Digite esse código referente ao


botão Pagando Atrasado

_______________________________________________________________________________
16
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

5º Passo: Clique em Executar ou pressione F5, segundo a Figura a seguir.

Clique Aqui

6º Passo: Ao ser executado o seu programa, entre com o valor da mensalidade de um


determinado curso. Por exemplo, digite 250 e clique em PAGANDO ANTECIPADO.

7º Passo: Note que o resultado apresentado foi 237,5, exatamente como esperado, já que se
calcularmos 5% de R$ 250,00, encontramos R$ 12,50. Em seguida, ao subtrair R$ 12,50 de
R$ 250,00, teremos R$ 237,50.

8º Passo: Mantenha 250 e clique em PAGANDO ATRASADO.

_______________________________________________________________________________
17
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

9º Passo: Note que o resultado apresentado foi 262,5, exatamente como esperado, já que se
calcularmos 5% de R$ 250,00, encontramos R$ 12,50. Em seguida, ao somar R$ 12,50 com
R$ 250,00, teremos R$ 262,50.

10º Passo: Clique em Redefinir.

Clique Aqui

EXIBINDO CÓDIGOS
Desejando exibir o código de algum dos UserForm que você elaborou para editar, por
exemplo, basta seguir os passos abaixo:

1º Passo: Clicar com o botão direito do mouse sobre o nome do UserForm e, com o esquerdo,
em Exibir código.
Clique aqui com o
botão esquerdo
Clique aqui com o
botão direito

2º Passo: Perceba que o código referente ao UserForm1 foi exibido.

Para fazer o mesmo com o UserForm2, siga os passos abaixo:

1º Passo: Clique com o botão direito do mouse sobre UserForm2 e, com o esquerdo, em Exibir
código.

_______________________________________________________________________________
18
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.
Autoria: Família Carielo

Clique aqui com o


botão esquerdo
Clique aqui com o
botão direito

2º Passo: Perceba que o código referente ao UserForm2 foi exibido.

Observação: Você pode seguir esses passos quando desejar exibir o código para alterá-
lo, por exemplo.

_______________________________________________________________________________
19
ESCOLA TÉCNICA LEIAUT CARIELE
RUA JOAQUIM FELIPE, 119. BOA VISTA, RECIFE – PE.