Você está na página 1de 35

Sumário

1. Introdução ao VBA ............................................................................................ 4


1.1 Utilidades do VBA ......................................................................................... 4
2. Gravando Macros .............................................................................................. 5
2.1 Habilitar a Aba desenvolvedor ....................................................................... 5
2.2 Gravando uma macro ................................................................................... 5
3. O Ambiente VBA................................................................................................ 7
3.1 Janela de Projeto ......................................................................................... 7
3.2 Janela de Código .......................................................................................... 7
4. O modelo de objeto ........................................................................................... 8
4.1 Exemplo – Objeto......................................................................................... 8
5. Procedimentos Sub e Function ............................................................................ 9
5.1 Nomear procedimentos:................................................................................ 9
6. Variáveis........................................................................................................... 9
6.1 Declarando Variáveis ................................................................................... 10
6.2 O que acontece se não declarar variáveis? .................................................... 10
6.3 Option Explict ............................................................................................. 11
6.4 Public ou Global .......................................................................................... 11
6.5 GoTo .......................................................................................................... 11
7. Objeto Range - Propriedades ............................................................................. 12
7.1 Offset ......................................................................................................... 13
8. O objeto Range - Métodos ................................................................................ 14
8.1 Select ......................................................................................................... 14
8.2 Copy (copiar) .............................................................................................. 14
8.3 Paste (colar) ............................................................................................... 15
8.4 Clear (Limpando valores) ............................................................................. 15
8.5 Merge ........................................................................................................ 16
8.6 Delete ........................................................................................................ 16
8.7 Insert ......................................................................................................... 16
8.8 Find ........................................................................................................... 17
9. Função MsgBox ................................................................................................ 17
9.1 Parâmetros ................................................................................................. 18
9.2 Valores da resposta do usuário ..................................................................... 18
9.3 MsgBox com atribuição ................................................................................ 19
10. Função InputBox ............................................................................................ 19
10.1 Parâmetros ............................................................................................... 20
11. Outras Funções .............................................................................................. 21
11.1 Data e Hora .............................................................................................. 21
11.2 Funções da planilha Excel – WorksheetFunction ........................................... 21
12. O método GetOpenFileName ........................................................................... 22
12.1 Abrir musica (*mp3) .................................................................................. 22
13. Controles de Fluxo .......................................................................................... 23
13.1 If Then Else .............................................................................................. 23
13.2 Select Case ............................................................................................... 24
13.3 Select Case com If ..................................................................................... 25
14. Estruturas de repetição ................................................................................... 26
14.1 Loop For Next ........................................................................................... 26
14.2 Do While................................................................................................... 27
14.3 Do until .................................................................................................... 28
15. Eventos no VBA .............................................................................................. 28
15.1 Open ........................................................................................................ 28
15.2 O evento Before Close ............................................................................... 28
15.3 Evento SelectionChange ............................................................................. 29
15.4 O evento Change....................................................................................... 29
15.5 Evento On time ......................................................................................... 29
16. Criando próprias funções no VBA ..................................................................... 29
16.1 Criando Fórmulas sem argumentos ............................................................. 30
16.2 Criando fórmulas com 1 argumento ............................................................ 30
16.3 Criando fórmulas com 2 argumentos ........................................................... 31
17. UserForm ....................................................................................................... 31
17.1 Exemplo 1 - Criando uma calculadora.......................................................... 33
17.3 Exemplo 2 – Tela de login .......................................................................... 34
1. Introdução ao VBA
A sigla VBA significa Visual Basic for Applications, ou Visual Basic para aplicativos em
português. O Visual Basic é uma linguagem de programação desenvolvida pela Microsoft, que
serve basicamente para você criar programas de computadores, criar sites ou até mesmo
aplicativos para smartphones.

A Microsoft possui o pacote de ferramentas chamado Microsoft Office, dentro desse pacote
estão os famosos aplicativos Office (Word, Excel, Power Point, Access, etc). Desde 1994, a
Microsoft decidiu implementar a sua linguagem de programação Visual Basic dentro desses
aplicativos, foi quando surgiu o Visual Basic para Aplicativos ou VBA. É possível usar a
programação em qualquer um deles! Neste curso usaremos VBA no Microsoft Excel.

1.1 Utilidades do VBA


O VBA é uma ferramenta poderosa dentro do Excel, com um conhecimento pleno, é possível
fazer coisas realmente incríveis, desde automatizar pequenas tarefas como preenchimento de
formulários, criação de fórmulas e algoritmos até desenvolver um sistema robusto para cadastro
de clientes ou controle de estoque.

Exemplo – Sistema de Cadastro de clientes

Fonte: Excel Max Soluções

4
2. Gravando Macros
No Excel, podemos fazer macros sem precisar programar, para isso basta gravar uma macro.
Entretanto, essa é uma solução efetiva para problemas simples, pois na maioria dos casos o
conhecimento de programação em Excel facilitará a otimização de problemas.

2.1 Habilitar a Aba desenvolvedor


Para trabalharmos com macros é necessário habilitar a aba Desenvolvedor no Excel, para isso
basta ir no menu iniciar e clicar em opções, após isso basta habilitar a Aba desenvolvedor como
descrito na figura a seguir.

2.2 Gravando uma macro

Antes de gravar uma macro, você precisa planejar exatamente o que quer que ela faça e em qual
ordem. Você quer usar esta macro em qualquer parte de uma planilha, então, antes de iniciar a
gravação da macro selecione a célula que desejar. Isto porque, após iniciada a gravação da
macro, toda célula selecionada, todo conteúdo digitado e todo comando escolhido serão
gravados.

As macros são automaticamente definidas com referências absolutas. Se você gravar uma macro
para introduzir dados ou selecionar uma célula, é melhor alternar para referências relativas. Se a
macro for gravada com referências absolutas, os dados aparecerão nas mesmas células, não
importando qual célula você selecionar antes de sua execução.

5
Para gravar:

• Na Aba “Desenvolvedor” clique em Gravar macro;


• Dê o nome à sua macro;
• Você pode atribuir uma tecla de atalho à execução da macro;
• Você também pode escolher onde sua macro será gravada - em uma nova pasta de
trabalho, na pasta atual ou em uma pasta somente para macros;
• A descrição serve para mostrar para futuros usuários o que a macro faz.

Uma macro só é disponível quando o arquivo onde ela está armazenada está aberto. Se você
quiser que suas macros estejam sempre disponíveis, independente dos arquivos estarem abertos,
grave-a em Pasta de trabalho pessoal de macros.

Exemplo – Gravando macro de cadastro de alunos


Curso de Excel VBA - PET CADASTRO
Nome Fase Nome Fase
Castelo 6
Victor 5
Alisson 7

Obs: Para ver o “passo a passo” da Macro, basta utilizar a tecla F8

6
3. O Ambiente VBA
3.1 Janela de Projeto
A janela de projeto é bastante utilizada no VBA para acessar módulos ou formulário que estão
na planilha, fornecerá também dados de outras pastas de trabalho do Excel que estão abertas.
Ela também mostra as propriedades do objeto em questão. Para habilitar a janela de projeto
basta ir em Exibir – Project Explorer.

3.2 Janela de Código


A janela de projeto é o local onde as macros ou módulos serão programados.

7
4. O modelo de objeto
No ambiente do VBA iremos trabalhar basicamente com objetos, que possuem propriedades e
métodos. Para facilitar o entendimento, leia o exemplo a baixo.

4.1 Exemplo – Objeto

Podemos fazer uma analogia da Universidade Federal de Santa Catarina como um objeto, a
UFSC possui vários centros, onde um deles é o Centro Tecnológico, que também será um
objeto. As salas de aula, cadeiras e lousas também são objetos, porém todos eles possuem
hierarquias diferentes. No Excel, podemos comparar a UFSC com um arquivo de Excel, o CTC
pode ser comparado com as abas de uma planilha, as salas de aula com gráficos e cadeiras com
as células do Excel. No VBA todos eles são objetos, mas com diferentes graus de hierarquias.

Todos os objetos possuem propriedades. Uma cadeira por exemplo, tem uma altura, peso,
volume, etc. Assim como uma cadeira, no Excel podemos trabalhar com as propriedades de
qualquer objeto, como por exemplo de uma célula.

Mostrando a propriedade valor de uma célula

Os objetos também possuem métodos, que podem ser comparados com ações que iremos dar a
eles. Um exemplo de método poderia ser vender, quebrar ou até mesmo pintar a cadeira, em
uma célula também podemos fazer diversas ações.

Limpando o valor da célula

8
Propriedades Métodos

Obs: os ícones referentes às propriedades são cinzas e os que se referem aos métodos são
verdes.

5. Procedimentos Sub e Function


Dentro do VBA existem dois tipos de procedimentos, o Sub e o Function. O procedimento Sub
é um grupo de declarações ou códigos que executam uma ou mais ações. O procedimento
Function é um grupo de declarações ou códigos que executam cálculos, retornando um único
valor, podendo ser comparado com uma fórmula. Ao programar um módulo, sempre é
necessário iniciar o código com Sub e o nome do Módulo e por fim finalizá-lo com End Sub.

Exemplo – Procedimento Sub

Exemplo – Procedimento Function

5.1 Nomear procedimentos:

• 1º caractere deve ser letra;


• Não usar ponto ou espaço;
• Não diferencia maiúscula de minúscula;
• Não usar: %,$,#,@,! Etc ;
• Nome de procedimentos = máximo de 255 caracteres .

6. Variáveis
Uma variável é um espaço na memória do computador, reservado para armazenar um ou mais
valores. Fazemos referência a este espaço utilizando nomes. Como o valor armazenado pode
variar, à medida que o código VBA é executado, estas estruturas são chamadas de variáveis. No
VBA, não é obrigatório a declaração de variáveis. Porém é recomendável que declaremos todas

9
as variáveis, de tal forma que o código fique mais claro e de fácil compreensão. A tabela a baixo
mostra os principais tipo de dados

Tabela – Tipos de dados


Declarando Variáveis
Tipo de dado Valor
Boolean Verdadeiro/falso

Integer de -32.768 à 32.767

Long de -2.147.483.648 a 2.147.483.647

de –3,402823E38 a -1,401298E-45 para valores negativos; de


Single
1,401298E-45 a 3,402823E38 para valores positivos

Double (negativo de –1,79769313486231E308 a -4,94065645841247E-324

Double (positivo) de 4,94065645841247E-324 a 1,79769313486232E308

Currency (moeda) de -922.337.203.685.477,5808 a 922.337.203.685.477,5807

Date 1/1/100 a 31/12/9999

String (comprimento variável) De 0 a aproximadamente 2 bilhões

String (comprimento fixo) De 1 a aproximadamente 65.400

Object Qualquer referência a objetos

Variant Qualquer valor

6.1 Declarando Variáveis


Para declararmos uma variável, utilizamos o comando Dim, conforme exemplificado abaixo:

6.2 O que acontece se não declarar variáveis?


Uma variável declarada sem tipo é considerada do tipo Variant, o que na prática significa que a
variável pode conter qualquer tipo de valor. Pode parecer uma prática interessante a não

10
declaração do tipo da variável, porém isso é altamente desaconselhável. Se não declararmos o
tipo, conforme descrito anteriormente, a variável poderá conter qualquer valor.

O Tipo define quais dados podem ser armazenados em uma variável. Por exemplo, variáveis
que armazenam valores numéricos, não devem aceitar caracteres de texto. Variáveis que
armazenam datas, não devem aceitar datas inválidas, como por exemplo, 30/02/2001. Toda
variável no VBA, é do tipo Variant, isto significa que a variável pode ser de qualquer tipo. O
que define o tipo da variável é o valor que está armazenado no momento.

6.3 Option Explict


A declaração Option Explict obriga a se declarar variáveis, o que previne alguns tipos de
problemas de digitação. Para isso, basta colocar esta declaração na parte de cima dos outros
módulos, conformo o exemplo a baixo.

6.4 Public ou Global


Se for feita a declaração de variável para apenas em uma Sub, ela estará valendo apenas para
ela. Se for necessário que a variável seja aplicada para todas os procedimentos, basta declará-la
no alto do ambiente de programação, em cima dos procedimentos. Para declarar a variável para
todos os módulos da planilha, basta utilizar Public ou Global.

Exemplo – variáveis com dim, public e global

6.5 GoTo
A função GoTo faz com que se determinada condição for atingida, o código “pulará” algumas
linhas de programação e irá até o local escolhido.

11
Exemplo – Utilizando GoTo caso apareça erros

7. Objeto Range - Propriedades


Em VBA para fazer referência a uma determinada célula ou grupos de células, frequentemente
utilizamos o objeto Range. Muitos programadores em início de carreira, preferem trabalhar com
este objeto devido à proximidade com a linguagem de planilha. Ao fazer referência à célula
HR53, basta digitar Range(“HR53”). Outra facilidade apresentada por este objeto é a ativação
automática do menu de propriedades, métodos e objetos. Digitando ponto (.) após a referência à
célula, este menu é ativado automaticamente. Entretanto, também é possível referenciar células
através do objeto Cells(i,j).

Exemplos - Referenciando com Range

12
Exemplos – Referenciando com Cells

Obs: No exemplo 3, atribuiu-se o nome de “base” para um dado intervalo na tabela

7.1 Offset
Esta propriedade serve para se movimentar a partir de uma célula escolhida. Os exemplos a
baixo simplificam o entendimento.

Exemplo – Utilizando Offset para inserir valores em um cadastro

13
Exemplos - Adress, Font e interior

8. O objeto Range - Métodos


8.1 Select
O método Select ativa planilhas e objetos em planilhas. Veja a baixo alguns exemplos.

Exemplos – Select

8.2 Copy (copiar)


O método Copy permite copiar dados de uma célula ou conjunto de células.

14
Exemplo – Copy

8.3 Paste (colar)


O método Paste permite colar normal ou especial.

Exemplos – Paste

8.4 Clear (Limpando valores)


Este método é utilizado quando se deseja apagar dados de uma célula.

Exemplos – Clear

15
8.5 Merge
Mesclando células.

Exemplo – Merge

8.6 Delete
Método para deletar células e colunas.

Exemplo – Delete

8.7 Insert
Inserindo células.

Exemplo – Insert

16
8.8 Find
Método para encontrar células ou valores.

Exemplo – Find

9. Função MsgBox
A função MsgBox exibe uma caixa de mensagem ao usuário e aguarda com que o usuário clique
em um de seus botões para que esta seja fechada. A estrutura de chamada à função MsgBox se
faz da seguinte forma.

17
9.1 Parâmetros

MsgBox ([prompt][, buttons] [, title] [, helpfile, context]) As VbMsgBoxResult

Prompt
Obrigatória. Expressão de sequência de caracteres exibida como mensagem na caixa de
diálogo. O comprimento máximo de prompt é de aproximadamente 1.024 caracteres,
dependendo da largura dos caracteres utilizados.
Buttons
Opcional. Expressão numérica que é a soma de valores que especifica o número e o tipo de
botões a exibir, o estilo de ícone a utilizar, a identidade do botão padrão e a modalidade da caixa
de mensagem. Se omitido, o valor padrão para buttons é 0.
Title
Opcional. Expressão de sequência de caracteres exibida na barra de título da caixa de diálogo.
Se você omitir title, o nome do aplicativo será inserido na barra de título.
Helpfile
Opcional. Expressão da sequência de caracteres que identifica o arquivo de Ajuda a ser utilizado
para fornecer ajuda sensível ao contexto relativa à caixa de diálogo. Se helpfile for
fornecido, context também deverá ser fornecido.
Context
Opcional. Expressão numérica que é o número de contexto da Ajuda atribuído ao tópico
da Ajuda apropriado por seu autor. Se context for fornecido, helpfile também deverá ser
fornecido.

Exemplo de MsgBox

9.2 Valores da resposta do usuário


Quando o usuário responde um “Sim”, “Não” ou “Ok” em uma caixa de MsgBox,
automaticamente o VBA associa a resposta com um valor. Estes valores estão explicitados na
tabela a baixo.

18
CONSTANTE VALOR DESCRIÇÃO

vbOK 1 OK

vbCancel 2 Cancelar

vbAbort 3 Abortar

vbRetry 4 Repetir

vbIgnore 5 Ignorar

vbYes 6 Sim

vbNo 7 Não

Valores e descrições das respostas da MsgBox

9.3 MsgBox com atribuição


Dependendo da resposta do usuário, podemos fazer diversas ações em um código. Veja no
exemplo a seguir.

Exemplo de Msgbox com atribuição

10. Função InputBox


A função InputBox permite que o programa interaja com o usuário, pedindo a ele que digite uma
informação ou dado. Ela exibe uma mensagem de instrução e uma caixa de texto onde o usuário
irá digitar a informação solicitada. A caixa fica ativa até que o usuário clique sobre algum botão.
Ao clicar em OK, a função retornará o valor digitado, ou então, este dado poderá ser
manipulado de acordo com a sua necessidade via código.

19
10.1 Parâmetros
A tabela a baixo mostra os parâmetros de da função InputBox:

Parâmetros - InputBox

Prompt (Obrigatória)Texto que orienta o usuário sobre qual valor digitar na caixa de texto.

Title Título da caixa de diálogo.

Default Valor exibido na caixa de texto como resposta padrão se nenhum dado for fornecido.

Distância entre a borda esquerda da caixa de diálogo e o canto esquerdo da tela. Se omitido, a caixa de
Xpos
diálogo será centralizada horizontalmente.
Distância entre a borda superior da caixa de diálogo e topo da tela. Se omitido, a caixa de diálogo será
Ypos posicionada a 1/3 do topo. Esquerda e Superior são parâmetros que só funcionam quando usados em
conjunto. Se você usa Esquerda, deve usar Superior, e vice versa.

HelpFile Arquivo de ajuda relativo à caixa de diálogo. Se usado, um botão Ajuda aparece na caixa.

Número do tópico associado à ajuda. Ajuda e Topico são parâmetros que só funcionam quando usados
Context
em conjunto. Se você usa Ajuda, deve usar Topico, e vice versa.

Exemplos de uso do InputBox

20
11. Outras Funções
11.1 Data e Hora
É possível que o VBA retorne valores do dia e hora atual.

11.2 Funções da planilha Excel – WorksheetFunction


Dentro do VBA é possível utilizar qualquer uma das funções que são utilizadas normalmente
dentro do Excel, auxiliando muito em determinadas tarefas. Como é possível utilizar qualquer
função do Excel, temos à disposição, por exemplo, as funções PROCV, CONT.SE, SOMASE,
MÉDIA, simplificando a solução de problemas complexos.

Para utilizá-la, digite dentro do código VBA WorksheetFunction. e o nome da função.


Obs: Todas as funções tem que ser em inglês!

Exemplo - Soma

Exemplo – Procura Vertical

Dica:
Quando não souber o nome da função em inglês, basta gravar uma macro para descobrir!

21
12. O método GetOpenFileName
O método GetOpenFileName no VBA é responsável por exibir uma caixa de diálogo onde o
usuário pode selecionar um determinado arquivo numa pasta do computador.

Essa função é muito útil quando precisamos que usuário abra uma segunda pasta de trabalho por
exemplo. Podemos ainda configurá-la, para que apareça na janela apenas uma determinada
extensão de arquivo, se queremos que o usuário abra um arquivo .txt, apenas arquivos txt’s
estarão disponíveis na caixa de diálogo.

Exemplo – Trazendo o caminho da pasta

Exemplo – Abrir planilhas

12.1 Abrir musica (*mp3)


Para abrir executar um arquivo mp3, primeiramente é necessário ir em desenvolvedor – inserir
controles e selecionar mais controles. Após isso, é necessário programar um novo módulo como
explicado a baixo.

22
Programação para executar arquivo em *mp3

13. Controles de Fluxo


13.1 If Then Else
Com este controle, será possível validar informações e tomar uma ação dependendo do
resultado do código.

Exemplo – Descobrindo o tipo físico da pessoa pelo café da manhã

Exemplo – Notas de desempenho de 1 a 5

23
13.2 Select Case
A instrução Select Case nos permite fazer uma escolha quando há diversas opções disponíveis.
Esta estrutura é mais indicada quando houver um problema com múltiplas escolhas.

Exemplo – Mostrando o desconto oferecido dependendo da quantidade de produtos comprados

Produtos Comprados Desconto oferecido

1 0%

2 10%

3 ou mais 20%

Exemplo – Mostrando o resultado entre partida de dois jogos (Brasil x Alemanha)

Brasil x Alemanha

E se o placar tivesse sido diferente?

24
13.3 Select Case com If
Em alguns casos, é possível utilizar a estrutura If junto com o Select Case.

Exemplo – Descobrindo o preço do moletom a partir do tamanho e do sexo do cliente

Moletom do CALIPRO
Tamanho Sexo Preço
P M 60

P F 50

M M 70

M F 55

G M 80

G F 65

25
14. Estruturas de repetição
Estruturas de repetição são muito usadas em códigos, pois elas facilitam o trabalho do usuário,
quando é necessário realizar a mesma tarefa por diversas vezes.

14.1 Loop For Next


Consiste em definir um valor atual e repetir este valor por n vezes.

Exemplo – Preenchendo células de 1 a 10 na coluna A

Exemplo - Atualização da fase do aluno

26
14.2 Do While
Comando para repetir o processo enquanto alguma informação é verdadeira.

Exemplo – Cadastro de alunos

Nome Idade Fase Nome Idade Fase


Matheus 21 Carlos 21 5
Bruno 20
Felipe 19
Gustavo 19 Atualizar
Alexandre 20
Victor 21
Mayara
Thais
21
21
Cadastrar
Marina 22
Rauber 23
André 19
Matheus 22
Carlos 21 5

27
14.3 Do Until
Fazer até que a condição seja verdadeira.

Exemplo – Cadastro apenas do nome

15. Eventos no VBA


Os eventos no VBA, são códigos de programação que são disparados quando determinada ação
ocorre. Existem eventos da pasta de trabalho e eventos de planilha

15.1 Open
O evento Open é um evento da pasta de trabalho. Este evento é disparado toda vez que uma
pasta de trabalho é aberta.

Exemplo - Mostrando apenas o UserForm ao abrir uma planilha

Obs: Application.Quit = fecha a planilha

15.2 O evento Before Close


É executado antes de fechar a planilha.

Exemplo – MsgBox antes de fechar a planilha

28
15.3 Evento SelectionChange
O evento SelectionChange é um evento de planilha no VBA que é disparado sempre que a
seleção de uma célula da planilha é alterada. É útil para disparar macros ao clicar em células.

Exemplo – MsgBox ao selecionar uma célula

15.4 O evento Change


O evento Change é um dos eventos de planilha mais importantes e mais utilizados no VBA, ele
é disparado sempre que o valor de uma célula é alterado numa planilha.

Exemplos –MsgBox ao ser alterado uma célula

15.5 Evento On time

29
16. Criando próprias funções no VBA
Existem diversas funções e fórmulas no Excel que usamos diariamente. Entretanto, as vezes é
necessário utilizar uma função que não existe no Excel, como por exemplo, uma fórmula que
faça a média apenas dos valores que estão em vermelho em uma tabela. Para resolver esse
problema, no VBA é possível criar funções personalizadas.

16.1 Criando Fórmulas sem argumentos


Não é necessário declarar variáveis para funções sem argumentos. Segue a baixo, 2 exemplos de
funções criadas. A primeira mostra o nome do usuário do computador, e a outra mostra o nome
da planilha ativa.

Exemplos - Fórmulas sem argumentos

16.2 Criando fórmulas com 1 argumento


Para criar fórmulas com 1 argumento é necessário declarar a variável envolvida e também o tipo
de resposta. Segue abaixo alguns exemplos.

Exemplos – Calculando raiz quadrada e elevando um número ao quadrado

Exemplo – Fórmula de situação final de um aluno utilizando Select Case

Reprovado 0 2,99
Recuperação 3 5,74
Aprovado 5,75 10

Alunos Nota Final Situação


Alisson 9
Marina 4,5
Thais 3,2
Mayara 5,75
Victor 2
André 10
Matheus 4
Alexandre 5
Gustavo 7,5
Felipe 4
Bruno 2

30
16.3 Criando fórmulas com 2 argumentos
Para criar fórmulas com 2 argumentos basta seguir o exemplo a baixo.

Exemplo – Criando fórmula para Cálculo do IMC

PETiano Peso (Kg) Altura (m) IMC


Alisson 75 1,85 21,9138057
Marina 68 1,77 21,70512943
Thais 55 1,65 20,2020202
Rauber 73 1,78 23,0400202
Mayara 50 1,61 19,28937927
Victor 80 1,75 26,12244898
André 82 1,86 23,7021621
Matheus 81 1,77 25,85463947
Alexandre 76 1,8 23,45679012
Gustavo 75 1,74 24,77209671
Felipe 77 1,77 24,57786715
Bruno 48 1,75 15,67346939

Resultado Situação
Abaixo de 17 Muito abaixo do peso
Entre 17 e 18,49 Abaixo do peso
Entre 18,5 e 24,99 Peso normal
Entre 25 e 29,99 Acima do peso
Entre 30 e 34,99 Obesidade I
Entre 35 e 39,99 Obesidade II (severa)
Acima de 40 Obesidade III (mórbida)

17. UserForm
UserForms são formulários personalizados pelo programador para criar uma interface entre a
pasta de trabalho do Excel e o usuário.

31
Exemplo de um UserForm

Para criação de um UserForm é necessário ir em inserir e selecionar UserForm. Uma caixa de


formulário aparecerá na janela de código e junto a ele uma caixa de ferramentas, que você
poderá inserir textos, botões, caixas de seleção, imagens, entre outros

O ponto positivo de se trabalhar com formulário no VBA é que poderá ser criado uma
programação para qualquer controle que você inserir. Além disso, cada controle possuirá
propriedades, nelas poderá ser alterado o nome de programação, bordas, cores, fontes, imagens,
entre outros. As propriedades podem ser observadas conforme a imagem abaixo.

32
Propriedades de um UserForm

A explicação do formulário se dará por dois exemplos a baixo

17.1 Exemplo 1 - Criando uma calculadora

Exemplo – Calculadora

33
Programação dos botões

17.3 Exemplo 2 – Tela de login

Tela de login

34
Programação dos botões

35

Você também pode gostar