Buscar

Excel 2016 VBA - Modulo I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 334 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 334 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 334 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

COD.: TE 1794/3
Excel 2016 VBA - Módulo I
Excel 2016 VBA - 
Módulo I
Excel 2016 VBA - 
Módulo I
Créditos
Excel 2016 VBA -
Módulo I
Coordenação Geral
Marcia M. Rosa
Coordenação Editorial
Henrique Thomaz Bruscagin
Autoria
Leonardo de Oliveira Costa
Este material constitui uma nova obra e é uma derivação da seguinte obra original, 
produzida por TechnoEdition Editora Ltda., em Out/2013: Excel VBA – Módulo I
Autoria: Beatriz Silva Ramos
Revisão Ortográfica e Gramatical
Cristiana Hoffmann Pavan
Diagramação
Carla Cristina de Souza
Edição nº 1 | 1794_3_WEB
junho/ 2016
Copyright © Monte Everest Participações e Empreendimentos Ltda.
Todos os direitos autorais reservados. Este manual não pode ser copiado, fotocopiado, 
reproduzido, traduzido ou convertido em qualquer forma eletrônica, ou legível por 
qualquer meio, em parte ou no todo, sem a aprovação prévia, por escrito, da Monte 
Everest Participações e Empreendimentos Ltda., estando o contrafator sujeito a responder 
por crime de Violação de Direito Autoral, conforme o art.184 do Código Penal Brasileiro, 
além de responder por Perdas e Danos. Todos os logotipos e marcas utilizados neste 
material pertencem às suas respectivas empresas.
“As marcas registradas e os nomes comerciais citados nesta obra, mesmo que não sejam assim identificados, 
pertencem aos seus respectivos proprietários nos termos das leis, convenções e diretrizes nacionais e 
internacionais.”
Sumário
Informações sobre o treinamento ....................................................................................... 10
Capítulo 1 - Ambiente de programação Excel ............................................................... 11
1.1. Introdução a macros e VBA ....................................................................... 12
1.2. Visual Basic Editor (VBE) ............................................................................ 13
1.2.1. Janela do Editor do Visual Basic (VBE) ....................................................... 14
1.3. Criando sua primeira macro ..................................................................... 21
1.3.1. Criando uma segunda macro.................................................................... 27
1.4. Executando uma macro ............................................................................ 28
1.4.1. Atribuindo uma tecla de atalho ................................................................ 28
1.4.2. Botão Executar .......................................................................................... 30
1.4.3. Botões de Controles de Formulário .......................................................... 30
1.4.4. Imagens, formas e figuras ........................................................................ 32
1.4.5. Barra de Ferramentas de Acesso Rápido ................................................... 34
1.4.6. Executar uma macro no ambiente VBE ..................................................... 35
1.4.7. A partir de outra macro ............................................................................ 36
1.4.8. Auto_Open e Auto_Close .......................................................................... 37
1.4.9. Botões ActiveX .......................................................................................... 38
1.4.10. Inúmeros eventos ..................................................................................... 41
1.4.11. Métodos OnKey e OnTime do objeto Application ..................................... 41
1.4.12. Application.run ......................................................................................... 41
1.5. Segurança de macros ............................................................................... 41
1.6. Depurando e editando o código ............................................................... 44
1.6.1. Depurando o código linha a linha de comando ........................................ 45
1.6.2. Ponto de interrupção (break point) ........................................................... 47
1.6.3. Interropendo uma macro durante a execução ......................................... 48
1.7. Conceitos básicos de estruturas e sintaxe ................................................ 48
1.7.1. Entendendo objetos, coleções, hierarquias, propriedades e métodos ...... 48
1.8. Sistema de ajuda ...................................................................................... 56
1.9. Pesquisador de objeto .............................................................................. 57
1.10. Barra de ferramentas VBE ......................................................................... 58
1.11. Janela Verificação imediata ....................................................................... 60
Pontos principais ........................................................................................................ 61
Teste seus conhecimentos .................................................................................................... 63
Mãos à obra! ................................................................................................................................. 67
Capítulo 2 - Principais objetos, propriedades e métodos ....................................... 69
2.1. Introdução ................................................................................................ 70
2.2. Objeto Range - Célula(s) ........................................................................... 70
2.2.1. Fazendo referência ................................................................................... 70
2.2.1.1. Fazendo referência pelo número de índice ............................................... 72
2.2.1.2. Fazendo referência pelo nome da célula .................................................. 72
2.2.1.3. Utilizando a propriedade ActiveCell .......................................................... 73
2.2.1.4. Configurando o objeto Range como uma variável .................................... 75
2.2.2. Principais propriedades ........................................................................... 75
2.2.2.1. Value ........................................................................................................ 75
2.2.2.2. Font .......................................................................................................... 76
2.2.2.3. Uso do With / End With ............................................................................. 77
6
Excel 2016 VBA - Módulo I Sumário
2.2.2.4. End ........................................................................................................... 80
2.2.2.5. Offset ....................................................................................................... 80
2.2.2.6. ColorIndex ................................................................................................ 81
2.2.2.7. NumberFormat ......................................................................................... 83
2.2.2.8. CurrentRegion .......................................................................................... 83
2.2.2.9. Address, Column, Row ............................................................................. 83
2.2.2.10. Borders ..................................................................................................... 84
2.2.3. Principais métodos ................................................................................... 84
2.2.3.1. Select ........................................................................................................ 84
2.2.3.2. Clear ......................................................................................................... 84
2.2.3.3. ClearContents ........................................................................................... 85
2.2.3.4. ClearFormats ............................................................................................ 85
2.2.3.5. Delete .......................................................................................................85
2.2.3.6. Insert ........................................................................................................ 86
2.2.3.7. Speak ........................................................................................................ 86
2.2.4. Coleção Cells ............................................................................................ 86
2.3. Objeto Worksheet - Planilha(s) .................................................................. 87
2.3.1. Fazendo referência ................................................................................... 87
2.3.1.1. Fazendo referência à planilha pelo nome (da aba da planilha) ................. 88
2.3.1.2. Fazendo referência à planilha pelo número de índice ............................... 88
2.3.1.3. Usando o nome do VBA ............................................................................ 89
2.3.1.4. ActiveSheet ............................................................................................... 90
2.3.2. Principais propriedades ............................................................................ 90
2.3.2.1. Name ........................................................................................................ 90
2.3.2.2. Visible ....................................................................................................... 90
2.3.2.3. ScrollArea ................................................................................................. 92
2.3.3. Principais métodos ................................................................................... 92
2.3.3.1. Select ........................................................................................................ 92
2.3.3.2. Delete ....................................................................................................... 92
2.3.3.3. Protect / Unprotect ................................................................................... 93
2.3.3.4. Copy ......................................................................................................... 94
2.3.3.5. Move ......................................................................................................... 95
2.3.4. Coleção Sheets ......................................................................................... 95
2.4. Objeto Workbook - Arquivo(s) .................................................................. 97
2.4.1. Fazendo referência ................................................................................... 97
2.4.1.1. Fazendo referência pelo nome do arquivo ................................................ 97
2.4.1.2. Fazendo referência pelo número de índice ............................................... 98
2.4.1.3. Fazendo referência por ActiveWorkbook e ThisWorkbook ........................ 98
2.4.2. Principais propriedades ............................................................................ 98
2.4.2.1. Name, Path e FullName ............................................................................. 99
2.4.2.2. Save .......................................................................................................... 99
2.4.3. Principais métodos ................................................................................... 99
2.4.3.1. Close ........................................................................................................ 99
2.4.3.2. Open ......................................................................................................... 100
2.4.3.3. Save .......................................................................................................... 100
2.4.3.4. Protect ...................................................................................................... 101
2.4.3.5. Unprotect.................................................................................................. 101
2.5. Objeto Application – O próprio Excel ........................................................ 101
2.5.1. Principais propriedades ............................................................................ 101
7
Excel 2016 VBA - Módulo I Sumário
2.5.1.1. Caption ..................................................................................................... 102
2.5.1.2. ActiveWindow ........................................................................................... 103
2.5.1.3. ScreenUpdating ........................................................................................ 103
2.5.1.4. DisplayAlerts ............................................................................................ 104
2.5.1.5. EnableCancelKey ....................................................................................... 105
2.5.1.6. DataEntryMode ......................................................................................... 106
2.5.1.7. WindowState ............................................................................................. 106
2.5.1.8. StatusBar .................................................................................................. 107
2.5.1.9. Cursor ...................................................................................................... 107
2.5.1.10. Dialogs ..................................................................................................... 108
2.5.1.11. Version ..................................................................................................... 109
2.5.2. Principais métodos ................................................................................... 109
2.5.2.1. Quit .......................................................................................................... 109
2.5.2.2. Calculate ................................................................................................... 109
2.5.2.3. FindFile ..................................................................................................... 109
2.5.2.4. GetOpenFileName ..................................................................................... 110
2.5.2.5. GetSaveAsFileName .................................................................................. 111
2.5.2.6. OnKey ....................................................................................................... 113
2.5.2.7. OnTime ..................................................................................................... 117
2.5.2.8. Wait .......................................................................................................... 120
Pontos principais ........................................................................................................ 121
Teste seus conhecimentos .................................................................................................... 123
Mãos à obra! ................................................................................................................................. 127
Capítulo 3 - Operadores, variáveis, constantes e arrays ........................................ 131
3.1. Operadores ............................................................................................... 132
3.1.1. Operadores aritméticos ............................................................................ 132
3.1.2. Operadores de comparação ...................................................................... 133
3.1.3. Operadores lógicos................................................................................... 133
3.1.4. Operadores de concatenação ................................................................... 134
3.1.5. Ordem das operações ............................................................................... 135
3.2. Variáveis ................................................................................................... 136
3.2.1. Declarando variáveis ................................................................................. 138
3.2.1.1. Declarando no procedimento ...................................................................141
3.2.1.2. Declarando no módulo ............................................................................. 144
3.2.1.3. Declarando no projeto .............................................................................. 145
3.2.1.4. Option Explicit .......................................................................................... 146
3.3. Macros com passagem de parâmetros ..................................................... 147
3.4. Constantes ............................................................................................... 147
3.5. Arrays ....................................................................................................... 148
3.5.1. Arrays multidimensionais ......................................................................... 151
3.5.2. Arrays dinâmicos ...................................................................................... 153
Pontos principais ........................................................................................................ 154
Teste seus conhecimentos .................................................................................................... 155
Mãos à obra! ................................................................................................................................. 159
8
Excel 2016 VBA - Módulo I Sumário
Capítulo 4 - Estruturas de decisão e repetição ............................................................. 161
4.1. Introdução ................................................................................................ 162
4.2. Estruturas de repetição ............................................................................. 162
4.2.1. Do...Loop .................................................................................................. 163
4.2.1.1. Do While...Loop ........................................................................................ 164
4.2.1.2. Do Until...Loop ......................................................................................... 166
4.2.2. While...Wend ............................................................................................. 168
4.2.3. For...Next e For Each...Next ...................................................................... 169
4.3. GoTo ......................................................................................................... 174
4.4. Estruturas de decisão ............................................................................... 175
4.4.1. If...Then .................................................................................................... 175
4.4.2. If...Then...Else ........................................................................................... 179
4.4.3. If aninhado ............................................................................................... 184
4.4.4. Inserindo várias condições com And e Or ................................................. 186
4.4.5. Select Case ............................................................................................... 189
4.5. Tratamento de erros ................................................................................. 191
4.5.1. Tipos de erros .......................................................................................... 191
4.5.2. Tratamento em tempo de execução ......................................................... 192
4.5.2.1. On Error GoTo line .................................................................................... 193
4.5.2.2. On Error Resume Next .............................................................................. 196
4.5.2.3. On Error GoTo 0 ....................................................................................... 196
4.5.3. Erros interceptáveis .................................................................................. 197
Pontos principais ........................................................................................................ 205
Teste seus conhecimentos .................................................................................................... 207
Mãos à obra! ................................................................................................................................. 211
Capítulo 5 - Funções VBA ....................................................................................................... 217
5.1. Introdução ................................................................................................ 218
5.2. Funções matemáticas ............................................................................... 218
5.3. Funções financeiras .................................................................................. 219
5.4. Funções de data e hora ............................................................................ 220
5.5. Funções de texto ...................................................................................... 226
5.6. Funções de conversão .............................................................................. 232
5.7. Funções de verificação .............................................................................. 233
5.8. Acessando a biblioteca de funções de planilha do Excel .......................... 234
5.9. Criando funções personalizadas ............................................................... 237
5.9.1. Utilizando as funções criadas ................................................................... 238
5.10. Criando suplementos XLAM ...................................................................... 239
Pontos principais ........................................................................................................ 242
Teste seus conhecimentos .................................................................................................... 243
Mãos à obra! ................................................................................................................................. 247
9
Excel 2016 VBA - Módulo I Sumário
Capítulo 6 - Interagindo com o usuário ........................................................................... 251
6.1. MsgBox ..................................................................................................... 252
6.1.1. Exibindo uma caixa de mensagem ........................................................... 252
6.1.2. Constantes utilizadas nas caixas de mensagem ....................................... 254
6.1.3. Identificando o botão clicado ................................................................... 257
6.2. Função InputBox ....................................................................................... 258
6.3. Método InputBox ...................................................................................... 260
6.4. Caixas de diálogo do Excel ....................................................................... 262
6.5. Eventos mais utilizados e práticos do Excel .............................................. 264
6.5.1. Procedimento de evento ........................................................................... 267
6.5.2. Eventos do WorkBook ............................................................................... 270
6.5.2.1. Open ......................................................................................................... 271
6.5.2.2. BeforeClose .............................................................................................. 271
6.5.3. Eventos de Worksheet............................................................................... 271
6.5.3.1. Worksheet_Activate .................................................................................. 272
6.5.3.2. Worksheet_SelectionChange ..................................................................... 272
6.5.3.3. Worksheet_Calculate................................................................................. 272
6.5.3.4. Worksheet_Change ...................................................................................273
6.5.4. Eventos com UserForms ........................................................................... 273
Pontos principais ........................................................................................................ 276
Teste seus conhecimentos .................................................................................................... 277
Mãos à obra! ................................................................................................................................. 281
Capítulo 7 - Objeto UserForm ............................................................................................... 285
7.1. Introdução ................................................................................................ 286
7.2. Criando formulários ................................................................................. 286
7.2.1. Inserindo controles em um formulário ..................................................... 287
7.2.1.1. Caixa de ferramentas ............................................................................... 288
7.2.2. Configurando as propriedades dos controles ........................................... 290
7.2.3. Configurando a aparência dos controles .................................................. 298
7.3. Controles da Caixa de ferramentas do UserForm ..................................... 299
7.3.1. Exibindo um formulário ............................................................................ 323
Pontos principais ........................................................................................................ 327
Teste seus conhecimentos .................................................................................................... 329
Mãos à obra! ................................................................................................................................. 333
10
Informações sobre este treinamento
Para o melhor aproveitamento do curso Excel 2016 VBA – Módulo I, 
é imprescindível ter participado dos cursos Excel 2016 – Módulo I 
e Introdução à Lógica de Programação, ou possuir conhecimentos 
equivalentes.
1
 9 Introdução a macros e VBA;
 9 Visual Basic Editor (VBE);
 9 Criando sua primeira macro;
 9 Diversas maneiras de executar uma macro;
 9 Segurança de macros; 
 9 Depurando e editando o código;
 9 Conceitos básicos de estruturas e sintaxe;
 9 Sistema de ajuda;
 9 Pesquisador de objeto;
 9 Barra de ferramentas VBE;
 9 Janela de Verificação Imediata.
Ambiente de 
programação Excel
12
Excel 2016 VBA - Módulo I
1.1. Introdução a macros e VBA
Macro é uma sequência de comandos escritos na linguagem VBA (Visual Basic 
for Application), armazenada em um módulo no VBE (Editor do Visual Basic), 
que pode ser executada sempre que você precisar.
No Excel, os arquivos podem ter alto teor de programação, gerando os mais 
variados tipos de aplicações. O VBA é um subconjunto do VB, desenvolvido 
para atuar junto com as aplicações do Office. É uma linguagem de programação 
visual, que utiliza o paradigma de orientação a objetos e eventos. Com o VBA, 
interagimos com os objetos Excel (Células, Planilhas, Arquivos etc.) através de 
suas propriedades, métodos e eventos.
EDITOR VBE
MACRO(S)
MÓDULO(S)
13
Ambiente de programação Excel 1
Tanto o Excel quanto o VBE podem ser instalados em diversos idiomas, mas 
o código VBA é sempre no idioma inglês, com padrões americanos (números 
decimais separados por ponto em vez de vírgula, por exemplo).
As macros têm a função de automatizar tarefas e podem ser criadas com o 
gravador de macros ou com o editor do Visual Basic que é incorporado ao Excel. 
Focaremos no Editor do Visual Basic.
1.2. Visual Basic Editor (VBE)
O Editor do Visual Basic, ou VBE, é onde escrevemos, editamos ou deletamos 
macros. O Excel tem que estar aberto para utilizarmos o VBE.
Habilite a guia Desenvolvedor do Excel. Caso ela esteja oculta, é necessário 
ativá-la: pela guia Arquivo / Opções / Personalizar Faixa de Opções, marcar 
a guia Desenvolvedor: 
14
Excel 2016 VBA - Módulo I
Outra maneira de acessar a opção Personalizar a Faixa de Opções é 
clicando com o botão direito do mouse em um dos nomes das guias do 
Excel:
Uma das formas de acessar o ambiente VBE é por meio da Guia Desenvolvedor 
/ Visual Basic (primeiro botão do grupo Código): 
O atalho ALT + F11 é muito utilizado para acessar o 
ambiente VBE. Para voltar a visualizar a planilha Excel, 
basta teclar ALT + F11 novamente.
1.2.1. Janela do Editor do Visual Basic (VBE)
Para inserir módulos no Editor do Visual Basic, vá no menu Inserir (do Editor 
VB) e escolha Módulo: 
 
 
15
Ambiente de programação Excel 1
Outra maneira de inserir um módulo é pelo segundo botão da Barra de 
Ferramentas Padrão do VBE:
 Para remover um módulo, clique com o botão direito do mouse sobre o nome 
do módulo e, então, na opção Remover: 
16
Excel 2016 VBA - Módulo I
Embora não seja o caso, podemos exportar módulos para reutilizá-los 
posteriormente. Como não estamos trabalhando com importação e exportação 
de módulos, aqui, clicamos em Não: 
É comum chamarmos o módulo de Módulo Padrão para 
diferenciá-lo do Módulo de Classe, (conteúdo que não 
será abordado neste treinamento).
Veja a descrição de algumas partes da janela do editor VBA: 
JANELA PROJECT 
EXPLORER
JANELA 
PROPRIEDADES
JANELA DO 
CÓDIGO VBA
17
Ambiente de programação Excel 1
 • Janela Project Explorer
Na janela Project Explorer, temos uma lista com todas as pastas de trabalho, 
incluindo suas respectivas planilhas, seus módulos padrão, módulos de classe 
e UserForms contidos nos arquivos abertos.
 
A janela Project Explorer, ilustrada na imagem a seguir, apresenta três botões 
e uma área principal, que exibe, em uma estrutura hierárquica, os projetos 
carregados, incluindo todos os seus itens e referências:
Os três botões da janela Project Explorer são descritos a seguir:
Opção Descrição
Exibir 
código
Abre a janela Code, utilizada para gravar e editar código 
para o item selecionado. 
Exibir 
objeto
Abre a janela Objeto para o documento ou UserForm 
selecionado.
Alternar 
pastas
Exibe ou oculta as pastas. Quando as pastas ficam ocultas, 
seus conteúdos ainda ficam visíveis.
18
Excel 2016 VBA - Módulo I
A tabela a seguir descreve os itens que a área principal pode exibir. Podemos 
expandir ou contrair a exibição dos itens utilizando os botões de mais (+) e 
menos (-):
Opção Descrição
Representa um projeto. 
Representa um UserForm (arquivos .frm do projeto).
Representa um módulo (arquivos .bas do projeto).
Representa um módulo de classe (arquivos .cls do projeto).
Representa ActiveX Designers, ou seja, os criadores (arquivos 
.dsr do projeto).
Representa as referências de outros projetos, definidas com o 
comando Referências do menu Ferramentas.
Os documentos são representados por ícones 
diferenciados, de acordo com seu tipo.
 • Janela Propriedades
Na janela Propriedades, temos a lista das propriedades do objeto selecionado 
na janela Project Explorer.
Essas são as três janelas básicas do VBE. Podemos escolher fechá-las (Project 
Explorer e Propriedades) ou exibi-las pelo menu Exibir do VBE.
19
Ambiente de programação Excel 1
O padrão é estar com estas janelas abertas. Caso sua janela do Project Explorer 
ou a janela Propriedades não esteja aberta, podemos exibi-las pelo menu Exibir 
do Editor do VBA:
No menu Ferramentas / Opções / Formato do Editor, podemos escolher a 
fonte e tamanho para as letras do nosso código:
É muito comum para os desenvolvedores trabalhar com as janelas do Excel e do 
VBE lado a lado, ou restaurar a janela do VBE dentro da planilha. Assim, quando 
executarmos a macro, podemos ver, ao mesmo tempo, o que está acontecendo 
na planilha Excel.
20
Excel 2016 VBA - Módulo I
Para visualizar a janela do VBE dentro da planilha, basta redimensioná-la:
Alguns desenvolvedores preferem ir na Barra de Tarefas do Windows e, com o 
botão direito do mouse, escolher Mostrarjanelas lado a lado: 
21
Ambiente de programação Excel 1
1.3. Criando sua primeira macro
As macros são digitadas dentro de um módulo. Caso necessário, pode-se criar 
mais módulos além do primeiro, os quais serão disponibilizados na pasta 
Módulos. Os módulos subsequentes serão nomeados como Módulo2, Módulo3 
e, assim, sucessivamente.
É possível alterar o nome de um módulo seguindo os procedimentos adiante:
1. Clique no menu Exibir do VBE e, em seguida, na opção Janela 'Propriedades';
2. Digite o nome do módulo dentro da propriedade Name: 
Os módulos, além de armazenarem as macros, podem ser utilizados para 
organizar o projeto. Podemos, por exemplo, criar um módulo em que estarão 
disponíveis todas as macros referentes à formatação do projeto, e outro módulo 
em que estarão somente os cálculos realizados: 
22
Excel 2016 VBA - Módulo I
Para criarmos uma macro, devemos seguir os procedimentos adiante:
1. Crie um arquivo no Excel;
2. Abra o editor de Visual Basic pressionando ALT + F11;
3. Crie a pasta Módulos, seguindo um dos procedimentos adiante:
 • Clique no menu Inserir, opção Módulo;
 • Clique com o botão direito o mouse sobre a janela Project Explorer e 
selecione, no menu de atalho que surgir, Inserir / Módulo.
Então, a pasta Módulos será criada e, dentro dela, teremos o Módulo1 ativo: 
4. Dentro do módulo, crie uma macro com o nome Teste. Digite a palavra-chave 
Sub, insira um espaço, digite Teste e pressione ENTER. Essa ação faz com que 
surjam dois parênteses após o nome da macro. A instrução End Sub surgirá 
abaixo, indicando o final do procedimento, como mostrado a seguir:
Sub Teste()
End Sub
Devemos inserir o procedimento entre as duas 
instruções, portanto, o cursor deve estar posicionado 
na linha imediatamente abaixo do nome da macro. 
23
Ambiente de programação Excel 1
5. Opcionalmente, insira um comentário dentro do procedimento. Para tanto, 
inicie a informação a ser comentada com um apóstrofo ('). Preferencialmente, o 
comentário deve ser escrito em uma linha anterior ao código a ser comentado, 
conforme o exemplo da macro Comentario1(), mostrada a seguir. No entanto, 
também é possível inserir o comentário na mesma linha de um código, o qual 
está exemplificado a seguir, na macro Comentario2():
Sub Comentario1()
'Teste de seleção de célula
Range("a2").select
End Sub
Sub Comentario2()
Range("a2").select 'Teste de seleção de célula
End Sub
6. Pressione a tecla TAB para criar um recuo. Isso faz com que o início e o final 
do procedimento fiquem destacados e o procedimento recuado. É recomendável 
criar as macros recuando as linhas que devem ser lidas como integrantes 
de um mesmo bloco de instruções. Perceberemos a importância do recuo, 
principalmente, na utilização de estruturas de decisões e laços – que veremos 
nos próximos capítulos;
7. Digite a seguinte linha:
Range (
Depois de digitar o parêntese, poderemos visualizar uma lista de parâmetros e 
argumentos do objeto, o que, de certa forma, facilita a digitação e diminui as 
chances de digitarmos argumentos errados. Apenas o argumento que estiver 
sendo editado no momento aparecerá em negrito, enquanto os nomes dos 
demais argumentos aparecerão em itálico. Argumentos opcionais aparecem 
entre colchetes []. O tipo de objeto é mostrado ao final dos nomes dos 
argumentos, que, neste caso, é As Range. 
24
Excel 2016 VBA - Módulo I
Quando os argumentos retornam um valor específico na sintaxe de alguns 
métodos e funções, eles devem estar entre parênteses (). Porém, se o retorno 
tiver que ser ignorado, deve-se excluir os parênteses. Mais adiante, esse assunto 
será abordado com detalhes.
 
Argumentos do 
comando Range
8. Digite o endereço da célula A2 entre aspas, feche o parêntese e digite um 
ponto, como mostrado a seguir:
Range("A2").
Depois de digitar o ponto, poderemos visualizar uma lista exibindo, em ordem 
alfabética, os métodos e propriedades do objeto. Devemos lembrar que sempre 
que digitarmos um ponto depois do nome de um objeto essa lista será exibida. Os 
métodos são identificados por uma figura verde à esquerda, e as propriedades, 
pelo símbolo de uma mão. 
9. Digite select em letras minúsculas e pressione ENTER para criar uma linha de 
espaço entre a linha atual e o final da macro.
Em vez de digitar o comando, pode-se clicar na propriedade ou método 
exibido na lista. Outra opção é digitar a letra inicial do comando para que, 
automaticamente, seja direcionada para a opção mais próxima contida na lista. 
Em seguida, basta pressionar a tecla de espaço. O comando será preenchido no 
código: 
Métodos e propriedades 
do objeto Range
 
25
Ambiente de programação Excel 1
É recomendável digitar as palavras-chave em letras minúsculas, 
pois, quando pressionamos a tecla ENTER e o cursor muda de 
linha, a primeira letra da palavra-chave obrigatoriamente fica 
maiúscula. Essa é uma forma de sabermos que digitamos a 
palavra corretamente. 
A macro deve estar da seguinte forma:
Sub Teste()
 'Utilizando o objeto Range
 Range("a2").Select
End Sub
Agora, podemos testar a macro (que tem como objetivo selecionar a célula A2) 
posicionando o cursor em qualquer lugar do código entre as instruções Sub e 
End Sub e pressionando a tecla F5. Então, a macro será executada e poderemos 
confirmar isso ativando o Excel e constatando que a célula A2 está selecionada: 
A tecla F5, sempre que pressionada, faz com que a 
macro na qual o cursor está posicionado seja executada.
26
Excel 2016 VBA - Módulo I
A macro já está criada, porém, ainda podemos acrescentar mais comandos a 
ela, por exemplo, para determinar o conteúdo ou valor da célula. Nesse caso, 
devemos realizar os seguintes passos:
1. Posicione o cursor após a palavra Select e pressione ENTER. Uma nova linha 
será criada;
2. Determine o conteúdo ou valor da célula selecionada, como a palavra 
"Produto", digitando a seguinte linha:
ActiveCell.Value = "Produto"
Em que:
 • ActiveCell: Indica que a propriedade ou o método será aplicado na célula 
ativa (A2);
 • Value: É a propriedade que retorna ou define o valor da célula.
A macro contextualizada em nosso exemplo está pronta para ser executada:
Sub Teste()
 'Utilizando o objeto Range
 Range("a2").Select
 ActiveCell.Value = "Produto"
End Sub
27
Ambiente de programação Excel 1
1.3.1. Criando uma segunda macro
Crie um arquivo novo em branco na sua pasta com o nome 01 Diversas Maneiras 
de Executar uma Macro.xlsm: 
1. Utilize Novo Arquivo ou CTRL + O para criar um arquivo em branco;
2. Salve como 01 Diversas Maneiras de Executar uma Macro.xlsm e, na caixa 
Tipo, escolha Pasta de Trabalho Habilitada para Macro do Excel: 
3. Na célula A1, digite CLIENTES;
4. Acesse o Editor do Visual Basic (atalho ALT + F11) e, depois, insira um Módulo 
Padrão;
5. Digite o seguinte código:
Essa macro insere o nome do cliente informado pelo usuário na célula da coluna 
1 e última linha não vazia da planilha mais 1. 
28
Excel 2016 VBA - Módulo I
1.4. Executando uma macro
Uma vez criada a macro, existem inúmeras maneiras de executá-la. Veja, a 
seguir, algumas delas.
1.4.1. Atribuindo uma tecla de atalho
Para atribuir uma tecla de atalho à execução de uma macro, na guia 
Desenvolvedor do Excel, no grupo Código, botão Macros, selecione a Macro 
e clique em Opções. Ou ainda, utilize o atalho ALT + F8 e clique em Opções. 
Veja a demonstração a seguir:
29
Ambiente de programação Excel 1
A partir de agora, quando este arquivo estiver aberto e você utilizar CTRL + tecla 
de atalho, será executada a macro. Note que, se a tecla de atalho escolhida for 
maiúscula junto ao CTRL, você deverá pressionar também o SHIFT. Vamos 
testar com CTRL + K:
Outro detalhe que pode ser importante é que esse atalho sobrepõe atalhos 
existentes do Windows ou do próprio Excel. Por exemplo, se atribuirmos o 
atalho CTRL + C, quando este arquivo estiver aberto, em vez de copiar, que é 
o comportamento padrão, o Excel executará a Macro.
30
Excel 2016 VBA - Módulo I
1.4.2. Botão ExecutarO botão Executar é acessado pela guia Desenvolvedor / grupo Código / 
Macros (ou ALT + F8) que abre a caixa exibida a seguir. Então, selecione a 
macro e clique em Executar:
1.4.3. Botões de Controles de Formulário
1. Para inserir botões de Controles de Formulário, na guia Desenvolvedor, 
grupo Controles, escolha Inserir:
31
Ambiente de programação Excel 1
Botão é o primeiro controle de formulário da primeira linha. 
2. Clique no Botão e clique na planilha (em qualquer célula):
3. Selecione a macro que você quer atribuir a esse botão e clique em OK:
4. Altere o tamanho e o texto do botão e clique nele para testar:
32
Excel 2016 VBA - Módulo I
1.4.4. Imagens, formas e figuras
Na planilha, podemos inserir imagens, formas ou figuras, inclusive, ícones ou 
figuras da Internet e, depois, atribuir uma macro. Veja, a seguir, mais detalhes:
1. Se optar por inserir uma forma, na terceira guia do Excel, Inserir, no segundo 
grupo, que é Ilustrações, clique no terceiro botão, Formas, para escolher uma 
forma. Nesse exemplo, foi escolhida a forma básica Bisel; 
33
Ambiente de programação Excel 1
2. A vantagem, aqui, é que a possibilidade de formatação é maior. Faça a 
formatação necessária e clique com o botão direito do mouse na opção Atribuir 
Macro: 
3. Atribua a macro e teste:
34
Excel 2016 VBA - Módulo I
1.4.5. Barra de Ferramentas de Acesso Rápido
É possível personalizar a Barra de Ferramentas Acesso Rápido do seu arquivo 
com botões. Basta clicar com o botão direito do mouse em um dos botões da 
Barra de Ferramentas de Acesso Rápido, escolher a opção Personalizar Barras 
de Ferramentas de Acesso Rápido, selecionar Macros em Escolher comandos 
em. Veja as imagens demonstrativas:
Em Personalizar a Barra de Ferramentas de Acesso Rápido, a caixa de 
diálogo exibida na imagem anterior é aberta. No canto superior direito, há a 
configuração que exibe em quais arquivos aparecerá esse botão. A opção padrão 
é que o botão na Barra de Ferramentas de Acesso Rápido aparecerá em todos 
os arquivos. Isso não é bom porque se este arquivo estiver fechado, mas outro 
arquivo estiver aberto, o botão continuará disponível. E se o usuário clicar no 
botão, o Excel vai tentar executar a macro, abrindo o arquivo que a contém. Mas 
há a possibilidade de configurar para que esse botão apareça apenas quando o 
arquivo que contém a macro estiver aberto.
35
Ambiente de programação Excel 1
Na parte superior da janela exibida na imagem anterior, na opção Escolher 
comandos em, escolha Macros. Embaixo, escolha a macro desejada, clique 
em Adicionar e, na parte inferior direita da janela, clique em Modificar para 
escolher o ícone. Pronto! Veja o resultado e teste: 
1.4.6. Executar uma macro no ambiente VBE
Quando estamos desenvolvendo macros, é muito comum as testarmos dentro 
do próprio VBE. Para isso, basta deixar o cursor "piscando" dentro de qualquer 
parte da macro e pressionar a tecla F5.
36
Excel 2016 VBA - Módulo I
Note que, para facilitar a visualização, a linha do código desta macro foi quebrada. 
Para quebrar uma linha no código, no Editor do Visual Basic (VBE), com o cursor 
dentro da macro, basta pressionar a tecla F5:
Isso é muito interessante para os desenvolvedores, pois permite ver o resultado 
de seu código, sua programação e sua macro a partir próprio Editor do Visual 
Basic.
1.4.7. A partir de outra macro
Podemos executar uma macro a partir de outra macro. Essa é uma prática muito 
comum nos aplicativos. Para isso, no código, basta usar a palavra-chave Call e 
o nome da macro a ser executada. Veja o exemplo adiante em que, pela macro 
Vendas, executamos a macro novoCliente: 
37
Ambiente de programação Excel 1
A boa prática é usar a palavra-chave Call, porém, na maioria das situações 
no VBA, ela é facultativa, ou seja, se deixar somente o nome da macro a ser 
executada, funcionará também. Faça o teste.
1.4.8. Auto_Open e Auto_Close
A macro com o nome Auto_Open é executada automaticamente quando o 
arquivo é aberto; da mesma forma, Auto_Close é executada quando o arquivo 
é fechado. 
Veja o seguinte exemplo em um novo módulo, o qual testaremos abrindo e 
fechando o arquivo:
38
Excel 2016 VBA - Módulo I
Vamos inserir um novo módulo, criar e testar as macros Auto_Open e Auto_
Close, abrindo e fechando o arquivo:
Acrescentamos uma variável e uma constante do escopo Private no topo do 
módulo, e as duas macros com chamada automática ao abrir e ao fechar o 
arquivo. Note que são exemplos ainda bem simples, porque o foco ainda não 
é a macro, mas como rodá-la. Quando o arquivo for aberto, será perguntado 
o nome do usuário e, ao fechar o arquivo, será exibido um MsgBox com os 
dizeres: Até Breve mais o nome do usuário. 
 
1.4.9. Botões ActiveX
Os controles ActiveX são objetos mais recentes que os controles de formulários 
e super programáveis, que têm uma gama bem maior de possibilidades de 
programação através da quantidade de propriedades e eventos que possuem. 
Aqui, usaremos o evento Click de um Command_Button. 
1. Pela guia Desenvolvedor, no grupo Controles, vá em Controles ActiveX e 
escolha o primeiro controle: Botão de Comando; 
2. Clique com o botão direito do mouse no Botão de Comando e escolha 
Propriedades;
39
Ambiente de programação Excel 1
3. Altere a propriedade Name para cmdNovoCliente e a propriedade Caption 
para NOVO CLIENTE. Name é a propriedade mais importante, pois é o nome 
que será utilizado no código. Caption é o nome que o usuário visualiza; 
Outras propriedades muito utilizadas são BackColor (preenchimento de fundo), 
ForeColor (cor da letra), Font (características da fonte escolhida), Picture (insere 
uma figura no botão) e PicturePosition (configura a posição da figura no botão).
4. Deixe o BackColor branco, no ForeColor, escolha, na paleta, o Azul Escuro. 
Neste exemplo, a fonte usada é Calibri, Negrito, 12, mas fique à vontade na 
escolha;
5. Escolha uma imagem na Web e, na propriedade Picture, importe essa imagem 
para o botão; 
6. Por último, configure a propriedade PicturePosition para a opção: 4 – 
fmPicturePositionRightCenter, localizando-a no centro direito do botão: 
 
40
Excel 2016 VBA - Módulo I
Agora, vamos programar o evento Click deste botão. 
7. Aplique dois cliques com o botão esquerdo do mouse e note que, nos eventos, 
o nome das macros já são definidos, portanto, a preocupação é só programar 
o que acontecerá quando este evento ocorrer (o clique do usuário neste botão): 
8. Chame a macro novoCliente. Para testar o controle ActiveX, na guia 
Desenvolvedor, segundo botão do grupo Controles, desabilite o Modo de 
Design (para programarmos, devemos estar no Modo de Design):
9. Saia do Modo de Design e acione o evento (no caso Click) no botão ActiveX:
41
Ambiente de programação Excel 1
1.4.10. Inúmeros eventos
Mais adiante, veremos que, além do Click, temos outras dezenas de eventos. 
Qualquer ação de mouse ou de teclado feita pelo usuário disparará dezenas de 
eventos em que se tenha programado alguma macro, que o Excel executará. 
MouseMove, por exemplo, é um evento disparado quando o usuário move o 
mouse.
1.4.11. Métodos OnKey e OnTime do objeto Application
Podemos configurar uma tecla ou uma combinação de teclas ou, ainda, um 
horário para a execução de uma macro. 
1.4.12. Application.run
O método Run do objeto Application é muito utilizado quando queremos 
executar uma macro armazenada em outro arquivo. Por exemplo, Application.
Run "nomeDoArquivo.xlsm! nomeDaMacro". 
1.5. Segurança de macros
Desde o Excel 2007, os arquivos com macros devem ser salvos com a extensão 
.xlsm. O padrão do Excel é .xlsx, mas com esta extensão as macros não são 
salvas. Quando for salvar um arquivo novo, ou que passará a ter macros, na 
guia Arquivo, em Salvar Como, na caixa Tipo, escolha a segunda opção: Pasta 
de Trabalho Habilitada para Macro do Excel. Com isso, seu arquivo já passa 
a ser .xlsm.
42
Excel 2016 VBA - Módulo I
Ao abrir qualquer arquivo com macros, caso este documento não esteja 
configuradocomo confiável, o Excel exibe, por padrão, um aviso de segurança. 
Ele informa que as macros foram desabilitadas e oferece a possibilidade de 
habilitá-las, pelo botão Habilitar Conteúdo. Se este arquivo for de sua confiança, 
clique no botão. 
Quando não habilitamos o conteúdo (macros) e tentamos executar qualquer 
macro do arquivo, ela não será executada pelo Excel e aparecerá o seguinte 
aviso:
A solução é fechar o arquivo e, ao abri-lo novamente, habilitar as macros. 
Mas só devemos habilitá-las quando o arquivo for de sua confiança, porque é 
extremamente fácil para um programador desenvolver um vírus de macro.
Caso você queira tornar seu arquivo confiável, evitando aparecer o aviso para 
habilitar macros, ao abrir o arquivo, na guia Desenvolvedor, grupo Código, 
clique na opção Segurança de Macro:
43
Ambiente de programação Excel 1
Com isso, é exibida uma caixa de diálogo da Central de Confiabilidade, com 
várias possibilidades de configuração:
Uma das configurações é a seguinte:
 • Habilitar todas as macros (não recomendado; códigos possivelmente 
perigosos podem ser executados): Essa opção habilita as macros 
automaticamente ao abrir o arquivo. Essa configuração torna seu computador 
vulnerável a códigos potencialmente maliciosos e não é recomendada pela 
Microsoft.
Note que há várias opções de configurações de segurança. As opções mais 
usadas são as configurações de Macro e Locais Confiáveis:
44
Excel 2016 VBA - Módulo I
Uma vez que você habilita o arquivo como confiável, o Excel o abrirá, mesmo 
com macros, sem exibir o aviso de segurança. 
Note que você pode fazer com que que essa configuração seja válida também 
para as subpastas, tornando-as confiáveis ao marcar a opção: As subpastas 
deste local também são confiáveis.
1.6. Depurando e editando o código
Todas as macros são procedimentos. Existem três tipos de procedimentos: 
Subrotinas (Sub), Funções (Function) e Propriedades (Property). Iremos focar, 
por enquanto, nas Sub que seguem essa sintaxe básica:
Sub Nome_da_Macro
 Instruções ou comandos ou comentários..
End Sub
Ou seja, começam com Sub e terminam com End Sub. O nome da macro não 
pode ter espaços, nem começar com números ou ser uma palavra reservada do 
VBA. Também não pode ser o mesmo nome de um módulo.
45
Ambiente de programação Excel 1
1.6.1. Depurando o código linha a linha de comando
Uma grande habilidade que deve ser desenvolvida é executar sua macro linha a 
linha, depurar o código. A grande vantagem de executar o código linha a linha 
(teclando F8) é que você vê o efeito de cada linha de código, ou seja, o resultado 
que cada linha de código está gerando. Para testar, clique em qualquer parte do 
código da macro e tecle F8. Surge uma seta amarela e a linha fica realçada em 
amarelo. A primeira instrução é o início da macro e, na verdade, não executa 
instrução alguma.
Tecle F8 e acompanhe o passo a passo da macro.
Note que, enquanto a macro está sendo executada passo a passo, o VBE exibe 
[interromper]:
46
Excel 2016 VBA - Módulo I
Outra dica importante ao acabar de analisar o código linha a linha, ou terminar 
de depurá-lo, é evitar permanecer no modo Interromper, ou executar até a última 
linha da macro (End Sub). Com F8 continua linha a linha e com F5 executa toda 
a macro de uma vez.
Ao clicar em Redefinir, o Excel sai do modo Interromper, terminando a depuração: 
Outra boa dica de depuração é a possibilidade de arrastarmos a seta amarela 
para a linha de comando que queremos executar. Quando, por exemplo, 
temos um código bastante grande e queremos determinar uma linha de código 
específica a ser executada sem a necessidade de executar as linhas anteriores, 
podemos arrastar a seta amarela até a linha de código desejada. Para testar, 
inicie o modo de depuração com F8. 
Clique e permaneça com o botão esquerdo do mouse em cima da seta amarela 
e arraste-o para a linha de código que você quer executar.
47
Ambiente de programação Excel 1
1.6.2. Ponto de interrupção (break point)
Outra maneira bastante usada para intervir na execução de uma macro é o 
recurso chamado breakpoint ou ponto de interrupção. Estando com o cursor 
piscando na linha em que queremos interromper ou pausar o código, podemos 
colocar um ponto de interrupção das seguintes maneiras: teclando F9, ativando 
o ponto de interrupção no menu Depurar ou, ainda, apenas clicando no canto 
da coluna ao lado do código: 
Clique no canto da coluna ao lado do código tanto para ativar quanto para 
desativar um ponto de interrupção.
Isso é útil quando queremos que a macro seja executada do início até antes da 
linha do ponto de interrupção. Coloque um ponto de interrupção e execute a 
macro:
Note que quando chega na linha do ponto de interrupção, a macro para, 
permitindo entrar no modo de depuração.
48
Excel 2016 VBA - Módulo I
1.6.3. Interropendo uma macro durante a execução 
Se quisermos interromper uma macro longa durante sua execução, 
pressionamos CTRL + Break ou ESC.
Sub contador()
 Dim c as integer
 For c = 1 to 1000
 Cells(c,1).select
 Cells(c,1) = c
 Next c
End sub
1.7. Conceitos básicos de estruturas e sintaxe
No VBA, existem 3 tipos de procedimentos: subrotinas (Sub/End Sub), funções 
personalizadas (Function/End Function) e propriedades dos objetos que 
podemos criar nos módulos de classe (Property/End Property). 
1.7.1. Entendendo objetos, coleções, hierarquias, 
propriedades e métodos
No Excel, um objeto é algo que pode ser programado ou controlado. O Excel 
tem centenas de objetos. Tudo que você pode especificar as características (cor, 
nomes, valores, largura) e/ou com que pode realizar alguma ação (salvar, abrir, 
fechar) são objetos; por exemplo: planilha(s), célula(s), um gráfico(s), linha(s), 
coluna(s), comentário(s), pasta(s) de trabalho, etc. 
Cada objeto do Excel tem um conjunto único de propriedades e métodos. Um 
dos segredos da programação em VBA é manipular os objetos do Excel, através 
de suas propriedades e métodos. O Excel possui dezenas, centenas, de objetos 
e cada objeto possui dezenas de propriedades e métodos. Quanto maior sua 
habilidade em manipular objetos, melhores resultados terá em suas macros.
O VBA apresenta diversos objetos, propriedades e métodos diferentes, de 
modo que seria impossível memorizar todos eles. Na sintaxe de uma função ou 
método, os argumentos vêm separados por vírgulas e são definidos de acordo 
com seu nome ou posição.
49
Ambiente de programação Excel 1
Os 4 principais objetos (e que formam a hierarquia básica de objetos Excel) são: 
 • Range: Célula(s); é o objeto mais utilizado. Range("A1");
 • Sheet: Planilha(s); Sheets("Plan1");
 • Workbook: Pasta(s) de trabalho ou arquivo(s); Workbooks("Vendas.xlsm").
 • Application: O Próprio Excel.
Quando representados de forma hierárquica, temos: Application.Workbook.
Sheet.Range.
Dentro do Excel (objeto Application), podemos ter vários arquivos abertos; 
cada arquivo (Workbook) pode conter uma ou várias planilhas, e cada planilha 
(Sheet) pode conter várias células (Range).
Gráfico, tabela dinâmica, linha, coluna, comentário são outros exemplos de 
objetos.
A sintaxe básica do VBA é a seguinte:
OBJETO.PROPRIEDADE
(objeto ponto propriedade)
Ou 
OBJETO.MÉTODO. 
(objeto ponto método)
Do lado esquerdo do ponto, temos um objeto (exemplo 1), uma coleção 
(exemplo 2) ou uma hierarquia de objetos (exemplo 3). Do lado direito do 
ponto, temos a propriedade ou o método deste objeto.
 • Exemplo 1
Range("A1").Value = "Clientes"
50
Excel 2016 VBA - Módulo I
Neste exemplo, estamos interagindo com o objeto Range (Célula) A1 e 
determinando sua propriedade Value (conteúdo da célula) como "Clientes".
Em programação, colocamos os textos 
entre aspas duplas.
 • Exemplo 2
Cells.Clear
Neste exemplo, interagimos com a coleção Cells. Uma coleção é um objeto 
(também possui propriedades e métodos) que representa todos os objetos do 
mesmo tipo ou, tecnicamente falando, todos os objetos instanciados pela mesma 
classe. Nesse caso, Cells representatodas as células da planilha. E utilizamos 
o método Clear, que limpa o objeto, para limpar todas as células da planilha. É 
muito comum, no início das macros que geram relatórios, o uso de Cells.Clear.
 • Exemplo 3
Range("A1").Font.Bold = True
Aqui, estamos usando uma hierarquia de objetos. Range("A1").Font retorna 
um objeto Font, que representa a fonte do objeto especificado e determinamos 
a propriedade Bold (Negrito) deste objeto.
O modelo de objetos do Excel possui centenas de objetos e milhares de 
hierarquias. Uma das poucas vantagens do gravador de macros se apresenta 
em casos específicos, como em uma empresa em que os administradores 
queiram que dados de uma base SAP sejam gerados no Excel em Gráficos de 
Dispersão. Neste caso, como em tantos outros, fica difícil saber com qual objeto, 
coleção ou hierarquia devemos interagir para obter os resultados esperados 
pelas macros. Ao fazer manualmente as tarefas e utilizar o gravador de macros, 
podemos verificar quais objetos, coleções, hierarquias, propriedades e métodos 
são utilizados. Daí o foco passa a ser adaptar o código gerado para nossa 
necessidade específica por meio da depuração do código (com F8), bem como 
da exclusão dos códigos extensos, e muitas vezes desnecessários, que foram 
gerados, além do acréscimo de loopings e estruturas de decisões.
51
Ambiente de programação Excel 1
O VBA, como tantas outras linguagens de programação, tem a sintaxe de ponto. 
Do lado direito fica a propriedade ou o método do objeto e, do lado esquerdo, fica 
uma hierarquia de objetos: Sheets("Plan1").Range("A1").interior.colorindex = 
3, apenas o objeto: Sheets("Plan1").name = "Estoque" ou, ainda, uma coleção: 
Cells.clear. Lembrando que a coleção também é um objeto, com propriedades 
e métodos próprios.
Os objetos, em geral, possuem propriedades e métodos. 
 • Propriedades
Propriedades são descrições, características do objeto:
 • O valor de uma célula pode ser determinado ou obtido pela propriedade 
Value do objeto Range;
 • A largura de uma coluna pode ser determinada ou obtida pela 
propriedade ColumnWidth do objeto Column;
 • O nome de uma planilha pode ser determinado ou obtido pela 
propriedade Name do objeto Sheets;
 • O caminho de um arquivo pode ser obtido pela propriedade Path do 
objeto Workbook;
 • Podemos alterar o título Microsoft Excel da Barra de Títulos do Excel 
para o nome que especificarmos, utilizando a propriedade Caption do 
objeto Application.
Veja outros exemplos:
O valor de uma célula é a propriedade Value do objeto Range:
Range("A1").value = 10
O nome de uma planilha é a propriedade Name do objeto Sheet:
ActiveSheet.name = "VENDAS"
52
Excel 2016 VBA - Módulo I
O nome de um arquivo é a propriedade Name do objeto Workbook:
Msgbox ActiveWorkbook.name 
A versão do Excel é a propriedade Version do objeto Application:
Msgbox Application.version
 • Métodos
Métodos são ações realizadas no objeto ou pelo objeto:
 • Limpamos uma célula com o método Clear do objeto Range;
 • Excluímos uma planilha com o método Delete do objeto Sheets;
 • Salvamos um arquivo com o método Save do objeto Workbook;
 • Saímos do Excel utilizando o método Quit do objeto Application;
 • Atualizamos uma tabela dinâmica pelo método Refresh do objeto 
PivotTables;
 • Exibimos um UserForm pelo método Show do objeto UserForm.
Veja outros exemplos:
Para limpar uma célula, use o método Clear do objeto Range:
ActiveCell.Clear
Para excluir uma planilha, use o método Delete do objeto Sheet:
ActiveSheet.Delete
Para salvar um arquivo, use o método Save do objeto Workbook:
ActiveWorkbook.Save
53
Ambiente de programação Excel 1
Para sair do Excel, use o método Quit do objeto Application:
Application.Quit.
O Editor do Visual Basic tem uma série de facilidades para a criação do código 
VBA. Uma delas é a lista com todas as propriedades e métodos do objeto, que 
é exibida, na maioria dos casos, ao digitar o nome de um objeto (ou um nome 
que referência). Em vez de "decorar" o nome de métodos/propriedades, basta 
selecioná-los em uma lista. 
 • Referência à célula A1, objeto Range
Os métodos (ações) do objeto Range são identificados pelo ícone verde e as 
propriedades (características) pelo ícone com a "mãozinha". 
 • Referenciando a célula ativa, objeto Range
54
Excel 2016 VBA - Módulo I
 • Referenciando o primeiro arquivo aberto, objeto Workbook
 • Referenciando o arquivo atual, objeto Workbook
A lista exibida é atualizada à medida que você digita o nome da propriedade ou 
do método do objeto que quer programar. Quando o método ou a propriedade 
estiver em negrito (selecionado/escolhido), basta pressionarmos a tecla TAB 
ou espaço que o VBE escreverá o nome completo da respectiva propriedade ou 
método, sem erros e mais rápido.
55
Ambiente de programação Excel 1
ActiveWorkbook.Save salva o arquivo atual. ActiveWorkbook faz referência 
ao arquivo ativo (objeto) e Save é a ação de salvar (método). 
Quando selecionamos um método, caso ele possua argumentos, eles serão 
exibidos após um espaço:
Aqui, foi utilizado o método Copy da célula A1. Note que, após o espaço, é 
mostrado o argumento deste método, ou seja, já podemos indicar para onde 
copiar a célula A1. Por exemplo:
Plan1.Range("A1").Copy Plan2.Range("A1")
Essa linha de código copia o conteúdo da célula A1 da Plan1 atual para a célula 
A1 da Plan2.
Quando digitamos um comando incorretamente, o VBE, por padrão, emite uma 
mensagem e coloca em destaque este comando: 
O código correto é: 
Range("A1").Value = 10
Note que, na forma correta, usamos a sintaxe do ponto, entre o objeto e sua 
propriedade. A sintaxe básica do VBA é: OBJETO.PROPRIEDADE ou OBJETO.
MÉTODO, ou seja, objeto + ponto + propriedade ou método. Em que a propriedade 
é a definição de uma característica ou descrição do objeto e o método representa 
uma ação realizada neste objeto ou por ele. 
56
Excel 2016 VBA - Módulo I
Antes do ponto que segue a propriedade ou o método do objeto referenciado, 
podemos ter uma coleção (que também é um objeto) ou uma hierarquia de 
objetos:
Range("A1").Clear 
Em que o objeto é Range("A1") e o método é Clear.
Cells.Clear 
Em que a coleção é Cells e o método é Clear.
Sheets("Plan2").Range("A1").Clear 
Em que a hierarquia é Sheets("Plan2").Range("a1") e o método é Clear.
1.8. Sistema de ajuda
Outra dica importante é a boa prática de acessar a ajuda da própria Microsoft. 
Deixe o cursor piscando numa instrução VBA e pressione F1, para acessar pela 
Web a ajuda da própria Microsoft. 
Se a ajuda do Excel estiver instalada e você tiver acesso à Internet, terá a melhor 
"apostila" de VBA Excel, com dicas e exemplos da própria Microsoft:
57
Ambiente de programação Excel 1
1.9. Pesquisador de objeto
O Pesquisador de objeto é uma ferramenta disponível no VBE que permite 
localizar objetos por meio da navegação na estrutura hierárquica de objetos 
da aplicação. Para acessar essa ferramenta, cuja aparência é ilustrada a seguir, 
basta clicar na opção Pesquisador de objeto do menu Exibir ou pressionar a 
tecla F2: 
 
A primeira caixa, localizada na parte superior esquerda, quando clicada, exibe 
uma lista com todas as bibliotecas de objetos disponíveis. Para visualizarmos 
os objetos do Excel, devemos selecionar a opção Excel. Na segunda caixa, 
abaixo da primeira, podemos inserir palavras-chave para buscar objetos. Para 
obter mais informações sobre qualquer item pesquisado, podemos selecioná-lo 
e pressionar F1.
58
Excel 2016 VBA - Módulo I
1.10. Barra de ferramentas VBE
No Editor do Visual Basic, temos a barra de ferramentas padrão, localizada 
abaixo da barra de menus. Ela exibe os principais comandos do programa, 
descritos na tabela a seguir:
Comando Descrição
(Exibir Microsoft Excel)
Retorna para a janela do Excel.
(Inserir UserForm)
Insere um UserForm, um módulo, um 
módulo de classe ou um procedimento.
(Salvar ...)
Salva a pasta de trabalho.
(Recortar)
Recorta o texto ou o objeto selecionado, 
movendo-o para a área de transferência.(Copiar)
Copia o texto ou o objeto selecionado na 
área de transferência.
(Colar)
Cola o conteúdo da área de transferência.
(Localizar)
Abre a caixa de diálogo Localizar.
(Desfazer)
Desfaz o último comando executado.
(Refazer)
Refaz o último comando desfeito.
59
Ambiente de programação Excel 1
Comando Descrição
(Executar Sub/UserForm)
Executa o procedimento no qual o cursor 
está localizado ou o UserForm.
(Interromper)
Pausa a execução do procedimento.
(Redefinir)
Interrompe a execução da macro.
(Modo de criação)
Ativa o modo de criação, no qual nenhum 
evento é disparado.
(Project Explorer)
Exibe a janela Project Explorer.
(Janela 'Propriedades')
Exibe a janela Propriedades.
(Pesquisador de Objeto)
Exibe o Pesquisador de objeto.
(Caixa de Ferramentas)
Ativa ou desativa a exibição da caixa de 
ferramentas. Este botão só é disponibilizado 
quando um UserForm é selecionado.
(Ajuda do Microsoft VBA)
Abre a ajuda do VBA.
60
Excel 2016 VBA - Módulo I
1.11. Janela Verificação imediata
Podemos utilizar a janela Verificação imediata para verificar resultados de 
variáveis durante a execução de uma macro. Além disso, é possível testar 
funções dentro desta janela. 
No exemplo a seguir, com a utilização do comando debug.print, será enviada, 
para a janela Verificação imediata, uma informação (data e horário do sistema): 
Sub Exemplo()
 Debug.Print Date
 Debug.Print Time
End Sub
Após executarmos a macro (tecla de função F5), teremos o seguinte resultado:
Estando com o cursor posicionado dentro da janela Verificação imediata, é 
possível executar o resultado de uma função. Para isso, basta utilizar o ponto 
de interrogação (?) seguido da função desejada e pressionar a tecla ENTER. A 
resposta ao comando aparecerá na linha inferior, conforme o exemplo seguinte:
61
Ambiente de programação Excel 1
Pontos principais
Atente para os tópicos a seguir. Eles devem ser estudados com muita 
atenção, pois representam os pontos mais importantes do capítulo. 
 • O VBA é uma linguagem de programação visual orientada a objetos cujos 
recursos são semelhantes aos recursos da linguagem Visual Basic;
 • As macros têm a função de otimizar rotinas, ou seja, conjuntos de tarefas 
que são realizadas frequentemente;
 • O Editor do Visual Basic, ou VBE, é uma aplicação em que podemos escrever 
e editar macros em VBA;
 • A janela Project Explorer exibe os projetos em uma estrutura hierárquica, 
incluindo todos os seus itens e referências;
 • A hierarquia básica de objetos do Excel é Application.Workbook.Worksheet.
Range;
 • O objeto Application é o próprio aplicativo Excel;
 • O objeto Workbook é a pasta de trabalho, o arquivo Excel. A coleção de um 
objeto Workbook é Workbooks, que representa o conjunto de pastas de 
trabalho abertas no objeto Application; 
 • O objeto Worksheet é a planilha. Em uma pasta de trabalho, pode ter uma 
ou várias planilhas, ou seja, dentro de um objeto Workbook podem ter 
vários Worksheets. A coleção de um objeto Worksheet é Worksheets, que 
representa o conjunto de planilhas existentes em um Workbook; 
 • Range refere-se a uma célula ou intervalos de células. A propriedade Cells 
retorna um objeto Range. A coleção de um objeto Range é Cells, que 
representa todas as células de uma planilha; 
62
Excel 2016 VBA - Módulo I
 • Além desses quatro objetos básicos, temos centenas de outros objetos e 
coleções, como row, rows, column, columns, comment, comments. A 
coleção também é um objeto e tem métodos e propriedades. Note que 
uma característica da maioria das coleções é o nome no plural; 
 • Todos os objetos possuem propriedades e métodos e estão organizados 
em uma hierarquia. Enquanto uma propriedade é uma característica de um 
objeto, como posicionamento, cor ou tamanho, um método é qualquer ação 
executada com um objeto;
 • O VBA apresenta diversos objetos, propriedades e métodos diferentes, de 
modo que seria impossível memorizar todos eles. Na sintaxe de uma função 
ou método, os argumentos vêm separados por vírgulas e são definidos de 
acordo com seu nome ou posição;
 • Uma coleção é um objeto que reúne objetos da mesma categoria;
 • Podemos acessar o sistema de ajuda do VBA posicionando o ponto de 
inserção na palavra do código sobre a qual desejamos informações e, em 
seguida, pressionando a tecla F1;
 • O Pesquisador de objeto é uma ferramenta disponível no VBE que permite 
localizar objetos por meio da navegação na estrutura hierárquica de objetos 
da aplicação.
1
Ambiente de
programação Excel
 Teste seus conhecimentos
64
Excel 2016 VBA - Módulo I
1. Onde é possível escrever e editar macros?
2. Para que serve a propriedade de um objeto?
 ☐ a) Na própria planilha. 
 ☐ b) Na guia Desenvolvedor.
 ☐ c) No Visual Basic Editor (VBE).
 ☐ d) Na janela Project Explorer.
 ☐ e) Na janela Propriedades ou utilizando ALT + F4.
 ☐ a) Para definir a característica de um objeto.
 ☐ b) Para executar a macro no modo Interromper.
 ☐ c) Para definir a ação de um objeto.
 ☐ d) Objetos não possuem propriedades.
 ☐ e) Para cancelar a execução de uma macro.
65
Ambiente de programação Excel 1
3. Qual das alternativas a seguir está correta?
4. Qual das alternativas a seguir refere-se ao local em que 
são exibidos os projetos carregados, em uma estrutura 
hierárquica, incluindo todos os seus itens e referências?
 ☐ a) Métodos são utilizados para indicar as ações dos 
objetos.
 ☐ b) Podemos indicar pontos de interrupção com a 
utilização da tecla de função F1.
 ☐ c) Todos os objetos possuem propriedades e métodos e 
estão organizados em uma hierarquia. 
 ☐ d) O atalho CTRL + F11 ativa a janela do VBE.
 ☐ e) Alternativas A e B estão corretas.
 ☐ a) Janela Propriedades
 ☐ b) Guia Desenvolvedor
 ☐ c) Janela Verificação imediata
 ☐ d) Barra de ferramentas
 ☐ e) Janela Project Explorer
66
Excel 2016 VBA - Módulo I
5. Qual das alternativas a seguir está incorreta?
 ☐ a) O atalho CTRL + R exibe a janela Project Explorer.
 ☐ b) Na guia Desenvolvedor, encontramos opções para 
gravação de macros e acesso ao VBE.
 ☐ c) As macros têm a função de otimizar rotinas e tarefas que 
são realizadas frequentemente.
 ☐ d) A linguagem VBA não é considerada uma linguagem de 
programação.
 ☐ e) Ao pressionar a tecla F1, temos acesso à ajuda do VBA.
1
Ambiente de
programação Excel
 Mãos à obra!
68
Excel 2016 VBA - Módulo I
Laboratório 1
A – Conhecendo o Visual Basic Editor e seus componentes
1. Acesse o editor VBE; 
2. Caso estejam abertas, feche as seguintes janelas:
 • Project Explorer;
 • Verificação imediata;
 • Propriedades.
3. Deixe as janelas Propriedades e Project Explorer visíveis.
2
 9 Objeto Range - Célula(s);
 9 Objeto Worksheet - Planilha(s);
 9 Objeto Workbook - Arquivo(s);
 9 Objeto Application - O próprio Excel.
Principais objetos, 
propriedades e 
métodos
70
Excel 2016 VBA - Módulo I
2.1. Introdução
No Excel, temos milhares de objetos. Um dos poderes do VBA é manipular 
esses objetos através de suas propriedades (características) e métodos (ações). 
Porém, é de fundamental importância saber fazer referência, ou seja, indicar ao 
VBA com qual objeto você quer interagir. 
Aqui, vamos ver os principais objetos do VBA, bem como suas principais 
propriedades e métodos e as formas de referenciar estes objetos. 
2.2. Objeto Range - Célula(s)
A seguir, veremos as diferentes maneiras de fazer referência ao objeto Range, 
quais são suas principais propriedades e seus principais métodos, além da 
coleção Cells.
2.2.1. Fazendo referência
Inúmeras aplicações em VBA Excel acessam e/ou modificam valores de células 
de uma planilha. As maneiras mais comuns para acessar uma célula são através 
do objeto Range e de diversas propriedades que retornam um objeto Range, 
como Cells, ActiveCell, CurrentRegion, Offset e End. 
 
Vamos fazer uma referência:
1. Feche todos arquivos;
2. Crie um arquivo novo;
3. Habilite para macro;
4. Salve como Objeto Range:
71
Principais objetos, propriedades e métodos 2
5. Insiraum módulo;
6. Nomeie a propriedade Name deste módulo como Fazendo_Referência: 
7. Nesse módulo, digite Sub F_01 e tecle ENTER:
 
Observe que os parênteses e o End Sub o VBE coloca automaticamente.
8. Insira o código:
9. Deixe o cursor posicionado dentro da macro e a execute com F5 ou F8.
Note que os dois pontos (:), assim como nas 
fórmulas do Excel, quer dizer "até".
72
Excel 2016 VBA - Módulo I
2.2.1.1. Fazendo referência pelo número de índice
Também podemos fazer referências utilizando o número de índice. Para fazer 
referência ao objeto Range pelo número de índice, usamos a propriedade Cells 
do objeto Application, que retorna um objeto Range. A forma padrão de usar 
Cells é informando o número da linha e o número da coluna da célula com a 
qual queremos interagir, separados por vírgula e entre parênteses. 
Como veremos adiante, a propriedade NumberFormat = "$ #,##0.00" especifica 
o formato da moeda padrão local (conforme configuração do Windows).
2.2.1.2. Fazendo referência pelo nome da célula
Também podemos referenciar um objeto Range pelo nome da célula, abreviado 
e entre colchetes.
A propriedade Value é a propriedade padrão do objeto Range. Quando não a 
especificamos, o VBA subentende. Veja os exemplos a seguir: 
 • Range("A1").Value = "Clientes" é o mesmo que Range("A1") = "Clientes"; 
 • Cells(1,1).Value = "Clientes" é o mesmo que Cells(1,1) = "Clientes"; 
73
Principais objetos, propriedades e métodos 2
 • [A1].Value = "Clientes" é o mesmo que [A1] = "Clientes"; 
 • Range("a1").end(xldown).offset(1,0).Value = "José" é o mesmo que 
Range("a1").end(xldown).offset(1,0) = "José".
Logo, na prática, é muito comum não utilizar a propriedade Value, pois, em 
pouquíssimos casos, ela é realmente necessária.
2.2.1.3. Utilizando a propriedade ActiveCell
Também podemos utilizar a propriedade ActiveCell que retorna um objeto 
Range que é a célula ativa. A propriedade Offset desloca um número de linhas 
e colunas a partir da célula ativa. 
Neste exemplo, começamos selecionando a última célula da coluna A.
Range("A1").End(xlDown).Row equivale a você estar com a célula A1 selecionada 
e utilizar CTRL + seta para baixo.
Toda vez que quisermos encontrar a última célula preenchida (antes de uma 
célula em branco) em uma tabela, podemos selecionar a primeira célula e utilizar 
CTRL + seta pra baixo, que a célula ativa passará a ser a última preenchida. Esta 
é a propriedade End do objeto Range.
 • End(xldown) equivale a CTRL + seta para baixo e faz referência à última 
célula antes da primeira em branco, no sentido de cima para baixo;
 • End(xlup) equivale a CTRL + seta para cima e faz referência à última célula 
antes da primeira em branco, no sentido de baixo para cima;
74
Excel 2016 VBA - Módulo I
 • End(xltoRight) equivale a CTRL + seta para direita e faz referência à última 
célula antes da primeira em branco, no sentido da esquerda para direita;
 • End(xltoLeft) equivale a CTRL + seta para esquerda e faz referência à última 
célula antes da primeira em branco, no sentido da direita para esquerda.
Por enquanto, usaremos End(xlDown) por ser mais simples, porém, em breve, 
usaremos End(xlUp) que é mais profissional.
Usamos a função do VBA InputBox para deixar o exemplo mais dinâmico. Ela 
permite ao usuário entrar com um dado.
Também podemos pedir para guardar, na variável linha, o número da última 
linha + 1, ou seja, o número da primeira linha em branco; inserir, na célula 
linha, coluna 1, o Cliente e, na célula linha, coluna 2, o valor dele. Os dois 
códigos têm o mesmo resultado:
Veja outros exemplos de referências ao objeto Range:
 • Range("C5:D9,G9:H16") faz referência à uma área múltipla: da célula C5 a 
D9 e da G9 a H16;
 • Range("A:A") faz referência a toda coluna A;
 • Range("1:1") faz referência a toda linha 1;
 • Range("A:C") faz a referência da coluna A a coluna C inteira;
75
Principais objetos, propriedades e métodos 2
 • Range("1:5") faz a referência da linha 1 a linha 5 inteira;
 • Range("1:1,3:3,8:8") faz referência às linhas 1, 3 e 8 completas;
 • Range("A:A, C:C, F:F") faz referência às colunas A, C e F.
2.2.1.4. Configurando o objeto Range como uma variável
Outra maneira de fazer referência a um objeto Range é configurando-o como 
uma variável. Para esse exemplo, insira uma planilha nova ou comece o código 
com Sheets.Add:
2.2.2. Principais propriedades 
 
Vamos ver, agora, as principais propriedades do objeto Range, lembrando que 
elas são características ou descrições do objeto.
2.2.2.1. Value
A propriedade mais utilizada do objeto Range é Value, que representa o 
conteúdo/valor da célula.
76
Excel 2016 VBA - Módulo I
Crie uma planilha nova, em branco, com o nome Objeto Range 02.xlsm e 
digite os seguintes dados na linha 1 e 2. No VBE, insira um módulo com o nome 
Principais_Propriedades e o seguinte código:
Caso o programador não coloque a propriedade ou um método em um objeto 
Range, o Excel considera como propriedade Value, que é a propriedade padrão 
e a mais utilizada deste objeto. 
Normalmente, os programadores não colocam a propriedade Value, escrevem 
apenas o nome do objeto e o Excel entende que é esta propriedade.
2.2.2.2. Font
Veja as propriedades da hierarquia do objeto Font:
77
Principais objetos, propriedades e métodos 2
No VBA, toda vez que repetirmos uma hierarquia de objetos no código em 
nossas macros, podemos abreviá-la com uso do bloco With / End With: 
 
2.2.2.3. Uso do With / End With
Para cada propriedade que definimos no Excel, é necessário referenciar o 
objeto ao qual ela será aplicada, mesmo quando o objeto for igual para diversas 
propriedades. O exemplo a seguir deixa clara a necessidade que existe de 
referenciar o objeto para cada uma das propriedades. Para a mesma célula, 
vamos definir um valor, aplicar uma cor à fonte, determinar que o valor desta 
célula é apresentado em duas casas decimais, aplicar à fonte o estilo negrito e 
aplicar ao fundo uma outra cor:
Sub Formatar()
 Range("A1").Value = 24.3
 Range("A1").Font.ColorIndex = 4
 Range("A1").NumberFormat = "0.00"
 Range("A1").Font.Bold = True
 Range("A1").Interior.ColorIndex = 6
End Sub
78
Excel 2016 VBA - Módulo I
Para evitar a repetição do mesmo objeto em casos como o que acabamos de 
verificar, ou seja, casos em que diversas propriedades são aplicadas a um mesmo 
objeto, podemos usar a estrutura With e End With. O objeto referenciado quando 
empregamos essa instrução deve ser colocado logo após a própria instrução. A 
sintaxe da estrutura End e End With é a seguinte:
With Objeto
 Instruções
End With
Quando formos digitar as instruções, devemos sempre lembrar que o nome do 
objeto não deve ser citado e que deve haver um ponto antes de cada uma das 
propriedades. Todas as instruções que digitarmos entre With e End With serão 
realizadas no dado objeto. 
A seguir, temos o código que aplica algumas propriedades a uma célula por 
meio da instrução With:
Sub Formatar()
 With Range("A1")
 .Value = 24.3
 .Font.ColorIndex = 4
 .NumberFormat = "0.00"
 .Font.Bold = True
 .Interior.ColorIndex = 6
 End With
End Sub
Devemos sempre nos lembrar de que é necessário 
digitar um ponto antes de cada propriedade. Apesar 
de a propriedade Value ser uma propriedade padrão, 
não precisando digitá-la na maioria das vezes, deve-se 
digitá-la dentro da instrução With quando for desejado 
atribuir um valor em uma célula.
79
Principais objetos, propriedades e métodos 2
A instrução With pode também ser usada em conjunto com outras instruções 
With se inserirmos uma dentro da outra, fazendo um processo de aninhamento: 
Sub AlterarPlan()
 With Sheets("Planilha3")
 With Range("A5")
 .Value = 7
 .Font.Bold = True
 .Font.ColorIndex = numero_da_cor
 End With
 .Name = "Cadastro"
 .Move Before:=Sheets("Plan1")
 .Visible = True
 End With
End Sub
Também podemos inserir outro With para a fonte aninhando dois With ao 
primeiro. 
Devemos sempre levar em consideração a 
importância de recuar as linhas, deixando a 
primeira

Continue navegando