Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Apostila de vba, Notas de estudo de Engenharia Informática

Apostila para iniciantes em VBA

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 24/08/2010

andressa-8
andressa-8 🇧🇷

3.5

(2)

1 documento

1 / 108

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
VBA
VBAVBA
VBA
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Pré-visualização parcial do texto

Baixe Apostila de vba e outras Notas de estudo em PDF para Engenharia Informática, somente na Docsity!

VBAVBAVBAVBA

MODULO 1

LIÇÃO 01: INTRODUÇÃO E CONTEÚDO

Introdução:

Nesse e no próximo módulo veremos assuntos relacionados a automação de tarefas no Excel. Existem situações onde não conseguimos resolver o problema proposto, simplesmente utilizando os comandos e fórmulas do Excel. Nessas situações temos que fazer o uso de recursos como Macros e Programação. A linguagem de programação do Excel é o VBA - Visual Basic for Applications. O VBA é a linguagem de programação para todos os aplicativos do Microsoft Office: Word, Excel, Access e Power Point.

Nas lições desse módulo aprenderemos sobre Macros. Veremos o que é uma Macro, para que serve, quando devemos usar Macros, como criar e alterar Macros. Em seguida aprenderemos os fundamentos básicos da linguagem VBA.

Nas lições desse módulo veremos os conceitos teóricos da linguagem VBA. Nas lições do próximo módulo, veremos exemplos de aplicação do VBA para a solução de problemas práticos, os quais não poderiam ser solucionados sem o uso de programação.

O que são Macros??

Nesse tópico apresentaremos uma visão geral sobre Macros. Nas próximas lições iremos detalhar os vários aspectos relacionados à Macros.

Caso você execute uma tarefa várias vezes no Microsoft Excel, é possível automatizá-la com uma macro. Uma macro é uma seqüência de comandos e funções armazenados em um módulo do Visual Basic for Applications - VBA e pode ser executada sempre que você precisar executar a tarefa. Quando você grava uma macro, o Excel armazena informações sobre cada etapa realizada à medida que você executa uma seqüência de comandos. Em seguida, você executa a macro para repetir, ou "reproduzir", os comandos.

Por exemplo, vamos supor que, seguidamente, você precisa formatar uma célula com Negrito, cor de fonte Vermelha, Itálico, Fonte Verdana de Tamanho 13 com quebra automática de linha. Ao invés de ter que executar todos os comandos de formatação em cada célula, você pode criar uma Macro que aplica todos os comandos de formatação. Após criada a Macro, cada vez que você tiver que aplicar o conjunto de comandos de formatação, basta executar a Macro, o que normalmente é feito através da associação de uma combinação de teclas com a Macro, como por exemplo Ctrl+L. No nosso exemplo, cada vez que você quisesse formatar uma célula com os formatos descritos, bastaria clicar na célula e pressionar Ctrl+L. Bem mais fácil do que aplicar cada comando individualmente.

Você pode Gravar uma macro para realizar uma tarefa em uma etapa: Antes de gravar uma macro, planeje as etapas e os comandos que você deseja que a macro execute. Se cometer um erro durante a gravação da macro, as correções feitas também são gravadas. Ao gravar macros, o VBA armazena cada uma em um novo módulo anexado a uma pasta de trabalho.

Por exemplo, se você insere com freqüência seqüências de caracteres de texto extensas nas células, você pode gravar uma macro para formatar essas células de maneira que o texto retorne automaticamente. Selecione a célula em que deseja inserir o retorno automático de texto e inicie a gravação. Clique em Células no menu Formatar, clique na guia Alinhamento, marque a caixa de seleção Retorno automático de texto, clique em OK e, em seguida, clique em Parar gravação. Como gravar uma macro. Nos veremos exemplos detalhados de macros nas próximas lições.

Como Tornar uma macro fácil de ser executada: Você pode executar uma macro escolhendo-a de uma lista na caixa de diálogo Macro. Para que uma macro seja executada sempre que você clicar em um botão específico ou pressionar determinada combinação de teclas, você pode atribuir a macro a um botão da barra de ferramentas, um atalho no teclado ou um objeto gráfico em uma planilha. Veremos como fazer essas atribuições nas próximas lições.

Como Exibir e alterar macros: Depois de gravar uma macro, você poderá exibir o código da macro com o Editor do VBA para corrigir erros ou alterar a função da macro. O Editor do VBA é um programa criado para

Existem duas maneiras distintas para a criação de uma macro:

  • Podemos usar o gravador de Macros: Nesse caso o Excel grava cada uma das ações que farão parte da Macro e transforma essas ações nos comandos VBA equivalentes. Quando a macro for executada, os comandos VBA é que serão efetivamente executados. Cada comando VBA corresponde a uma ação efetiva da macro.
  • Criar a Macro usando VBA: A partir do momento em que você domina a linguagem VBA, poderá criar a macro digitando os comandos VBA necessários. Isso é feito usando o Editor de VBA, conforme veremos nas próximas lições.

Melhor do que definições é a prática!!

Melhor do que uma série de definições é ver uma Macro em ação. Vamos a um exemplo simples, onde criaremos uma Macro. Em seguida vamos executa-la. Na próxima lição analisaremos o código VBA criado pelo gravador de macros.

Exemplo 1: Criar uma macro usando o Gravador de Macros. A macro deverá formatar a célula atual com Negrito, cor de fonte Vermelha, com fundo cinza. Gravar a macro com o nome de FormataVermCinza.

  1. Abra o Excel.
  2. Abra a Planilha C:\ExcelAvancado\Módulo 5 - Exercício 01.xls.
  3. Clique na célula A4.
  4. Agora vamos iniciar a gravação da Macro.
  5. Selecione o comando Ferramentas -> Macro -> Gravar nova macro.
  6. Será exibida a janela Gravar Macro.
  7. No campo Nome da macro digite: FormataVermCinza.
  8. No campo Tecla de atalho digite L. Observe que o Excel troca para Ctrl+Shift+L. Isso acontece porque a combinação Ctrl+L já deve estar associada com algum comando do Excel. Com isso estamos associando a combinação Ctrl+Shift+L com a macro FormataVermCinza, ou seja, cada vez que quisermos executar essa macro basta pressionar Ctrl+Shift+L.
  9. O campo descrição é simplesmente uma descrição da funcionalidade da macro. Digite o texto indicado na Figura 5.2:

Figura 5.2 - Definição do nome e da tecla de atalho da Macro.

  1. Clique em OK. A gravação da Macro será iniciada. Todos os comandos que você executar, durante a gravação da Macro, farão parte da Macro.
  1. Uma nova barra ( ) é exibida na planilha do Excel. Essa barra é utilizada para parar a gravação da Macro. Agora devemos escolher os comandos que farão parte da macro. Após ter executado os comandos que

farão parte da macro, basta clicar no botão ( ) para encerrar a gravação da Macro.

  1. Clique no botão ( ) para aplicar Negrito.
  2. Na lista de Cores da fonte ( ) selecione Vermelho.
  3. Na lista de Cores de fundo ( ) selecione Cinza.
  4. Clique no botão ( ) para encerrar a gravação da Macro.
  5. Agora a macro FormataVermCinza foi criada e podemos utiliza-la sempre que necessário.

Para executar a macro FormataVermCinza faça o seguinte:

  1. Clique na Célula B7.
  2. Pressione Ctrl+Shift+L.
  3. A macro FormataVermCinza é executada e as formatações definidas pela macro (Negrito, fonte Vermelha e fundo Cinza) são automaticamente aplicadas na Célula B7. Veja que com um simples comando de teclado, executo uma série de comandos (nesse exemplo: três comandos de formatação). Esse exemplo nos dá uma pequena idéia do poder e facilidade do uso das macros.
  4. Também é possível executar a macro usando o comando Ferramentas -> Macro -> Macros.
  5. Clique na célula B5.
  6. Selecione o comando Ferramentas -> Macro -> Macros.
  7. Será exibida a janela Macro, onde são listadas todas as macros existentes na pasta de trabalho atual (no arquivo carregado no Excel), conforme indicado na Figura 5.3:

Figura 5.3 - A janela Macro.

  1. Clique na Macro FormataVermCinza para seleciona-la.
  2. Clique no botão Executar.

.ColorIndex = 15

.Pattern = xlSolid

End With

End Sub

Esses são os comandos VBA (que por enquanto não entendemos o que significam) que formam a macro FormataVermCinza. Apenas para adiantar um pouco o assunto, a seguir descrevo o que faz cada um dos principais comandos dessa Macro:

Selection.Font.Bold = True

Esse comando aplica a formatação em Negrito para a célula onde está o cursor (ou no conjunto de células selecionadas), quando a macro é executada.

Selection.Font.ColorIndex = 3

Esse comando aplica cor de fonte Vermelha para a célula onde está o cursor (ou no conjunto de células selecionadas), quando a macro é executada.

With Selection.Interior

.ColorIndex = 15

.Pattern = xlSolid

End With

Esses comandos aplicam a cor de fundo cinza, na célula onde está o cursor (ou no conjunto de células selecionadas), quando a macro é executada.

Esses são comandos da linguagem VBA. Com o uso do VBA temos acesso a todos os comandos e funções do Microsoft Excel. Tudo o que você faz usando o teclado e o mouse, também é possível de ser feito com o uso do VBA, porém de uma maneira automatizada. O uso de macros é especialmente indicado naquelas situações em que temos um conjunto de comandos que precisam ser executados, repetidamente, em diferentes situações. Nesses casos é muito mais prático criar uma macro composta pelo conjunto de comandos e, cada vez que os comandos precisarem ser executados, executar a macro.

Na Figura 5.5 temos uma visão do Editor do Visual Basic. Veremos mais detalhes sobre esse editor nas próximas lições, quando começarmos a trabalhar com o VBA.

Figura 5.5 - O Editor de VBA

  1. Selecione o comando Arquivo -> Fechar e Voltar para o Microsoft Excel.
  2. Você estará de volta à planilha C:\ExcelAvancado\Módulo 5 - Exercício 01.xls.
  3. Salve e feche a planilha.

LIÇÃO 04: OPERAÇÕES COM MACROS

Nessa lição aprenderemos a renomear, excluir e fazer outras alterações em macros. Também aprenderemos a alterar outras opções associadas com a Macro, tal como o comando de teclado para executar a macro.

Existem algumas operações que podem ser feitas com uma macro, após a sua criação. A mais óbvia (e o motivo pelo qual uma macro é criada) é para executar a macro. Além da execução é possível executar outras operações com uma macro, conforme descrito a seguir:

Para renomear uma macro siga os seguintes passos:

  1. Abra o arquivo onde está a macro a ser renomeada.
  2. Selecione o comando Ferramentas -> Macro -> Macros.
  3. Será exibida a janela Macro.
  4. Clique na macro a ser renomeada para seleciona-la.
  5. Clique no botão Editar.
  6. Será aberto o editor do VBA. O nome da macro vem logo após o comando Sub da primeira linha, conforme destacado na Figura 5.6:

Figura 5.6 - Renomeando uma Macro.

  1. Para renomear a macro basta alterar o nome após o comando Sub e depois clicar no botão ( ) para salvar as alterações.
  2. Em seguida é só fechar o Editor de VBA.

Para excluir uma macro siga os seguintes passos:

  1. Abra o arquivo onde está a macro a ser excluída.
  2. Selecione o comando Ferramentas -> Macro -> Macros.

FormataContábil. Criar um botão de comando na Barra de Ferramentas padrão e associar esse botão com a macro FormataContábil.

  1. Abra o Excel.
  2. Abra a Planilha C:\ExcelAvancado\Módulo 5 - Exercício 02.xls.
  3. Clique na célula F2.
  4. Agora vamos iniciar a gravação da Macro.
  5. Selecione o comando Ferramentas -> Macro -> Gravar nova macro.
  6. Será exibida a janela Gravar Macro.
  7. No campo Nome da macro digite: FormataContábil.
  8. Na lista Armazenar macro em, selecione a opção Esta pasta de trabalho.
  9. O campo descrição é simplesmente uma descrição da funcionalidade da macro. Digite o texto indicado na Figura 5.9:

Figura 5.9 - Definição do nome e da descrição da macro FormataContábil.

  1. Clique em OK. A gravação da Macro será iniciada. Todos os comandos que você executar, durante a gravação da Macro, farão parte da Macro.
  2. Uma nova barra ( ) é exibida na planilha do Excel. Essa barra é utilizada para parar a gravação da Macro. Agora devemos escolher os comandos que farão parte da macro. Após ter executado os comandos que

farão parte da macro, basta clicar no botão ( ) para encerrar a gravação da Macro.

  1. Clique no botão ( )) para aplicar Itálico.
  2. Na lista de Cores da fonte ( ) selecione Vermelho.
  3. Selecione o comando Formatar -> Células. Clique na opção Contábil e selecione duas casas decimais, conforme indicado na Figura 5.10:

Figura 5.10 - Formatação Contábil com duas casas decimais.

  1. Clique em OK.
  2. Clique no botão ( ) para encerrar a gravação da Macro.
  3. Agora a macro FormataContábil foi criada e podemos utiliza-la sempre que necessário.

Agora vamos aprender como associar um botão com a macro FormataContábil.

Para associar um botão com uma macro siga os seguintes passos:

  1. Clique com o botão direito do mouse em uma das barras de ferramentas do Excel. Por exemplo, clique com o

botão direito do mouse na área cinza, ao lado do botão ( ).

  1. No menu que é exibido clique na opção Personalizar.
  2. Será exibida a janela Personalizar.
  3. Clique na guia Comandos.
  4. Na lista de Categorias que é exibida dê um clique na opção Macros conforme indicado na Figura 5.11:

LIÇÃO 06: INTRODUÇÃO AO VBA

Nas lições iniciais desse módulo aprendemos a criar macros simples, as quais reproduzem uma série de comandos de mouse e teclado. Para que possamos criar macros mais sofisticadas e resolver problemas mais complexos com o Excel, precisamos utilizar programação. Conforme descrito anteriormente, a linguagem de programação do Excel (e de todos os aplicativos do Office) é o VBA: Visual Basic for Application.

Uma linguagem de programação, basicamente, é um conjunto de comandos, rotinas e funções que executam tarefas específicas. Considere o exemplo genérico a seguir, onde são utilizados comandos para acessar uma tabela do access a partir de uma planilha do Excel:

' Comentários iniciais do Programa.

' Acessa dados da tabela pedidos do banco de dados

' C:\Meus documentos\vendas.mdb

Acessar o banco de dados

Acessar a tabela Pedidos

Aplicar um filtro para País=Brasil

Exibir os dados obtidos na planilha atual

Formatar a primeira linha com negrito

Formatar a primeira linha com fonte azul

Encerrar a macro

Por que eu preciso aprender a usar o VBA?

A utilização de Macros em conjunto com os recurso do VBA nos oferece um grande número de opções na busca por soluções para os problemas mais complexos. Porém existem situações em que, por mais que saibamos utilizar todos os recursos, comandos e funções do Excel, essa utilização não é capaz de solucionar o problema proposto. Nestas situações temos que utilizar programação.

A linguagem de programação utilizada pelo Microsoft Excel é o VBA - Visual Basic for Applications. Conforme veremos a partir de agora esta é uma linguagem, ao mesmo tempo, extremamente simples e poderosa. Com o VBA temos acesso completo a todos os elementos de todos os objetos de uma planilha do Excel. Também temos acesso a elementos externos, tais como bancos de dados do Access. Com código VBA podemos criar uma rotina para validação do dígito verificador de uma célula de CPF, CNPJ ou de um campo NúmeroDoProcesso; podemos criar código que percorre todas as linhas de uma planilha, alterando os valores de uma ou mais colunas, com base em uma ou mais condições, podemos automatizar rotinas para importação e exportação de dados e assim por diante.

Nesta introdução a linguagem VBA, trataremos dos seguintes assuntos:

  1. Programação com o Microsoft Excel.
  2. Introdução a linguagem VBA - Visual Basic For Applications.
  3. Aprendendo VBA:
    • Uma visão geral.
    • O Ambiente de Programação.
    • Anatomia dos Módulos do VBA.
    • Tipos de dados.
    • Variáveis.
    • Escopo de Variáveis.
    • Estruturas de controle, etc.
  4. Exercícios e Exemplos.
  5. Funções e procedimentos.
  6. Funções de Data e Hora.

1.Programação com o Microsoft Excel - Por que utilizar?

O VBA nos oferece possibilidades de controle e personalização para criar aplicativos que vão além das ações de macro.

O VBA é uma linguagem de programação interna do Microsoft Excel (na prática é a linguagem de programação para todos os aplicativos do Office: Access, Word, Excel e Power Point). Usamos o VBA pelo mesmo motivo que utilizamos macros - para automatizar tarefas e rotinas repetitivas, envolvendo os diversos elementos do banco de dados (tabelas, consultas, formulários, relatórios, folhas de dados, macros e módulos). No entanto, o VBA oferece maior poder e controle mais detalhado do que as ações de macro.

Na prática as ações de macro duplicam as operações que podemos realizar manualmente, usando menus e teclas de atalho. O VBA vai além da simples automação de seqüências de ações. Ele oferece um conjunto de ferramentas que lhe permite criar aplicações personalizadas com base nos elementos do Excel e nos objetos de planilha do Excel. Por exemplo, podemos criar uma rotina em VBA em uma planilha do Excel. Esta rotina pode acessar dados em ums segunda planilha que está na rede, por exemplo. A mesma rotina além de acessar os dados pode fazer cálculos, consolidações, gerar os resultados no formato de uma planilha do Excel e salvar a planilha na rede. Este é apenas um pequeno exemplo do que pode ser feito como o VBA.

Vantagens em utilizarmos o VBA:

Já utilizamos macros e aprendemos a automatizar algumas tarefas como a aplicação de formatos personalizados. O VBA apresenta, em relação as macros, as seguintes vantagens:

  • Acessando dados de uma ou mais planilhas: Com ações de macros estamos limitados a operar com os registro ou com o conjunto de registros atualmente sendo exibido na pasta de trabalho atual O VBA permite trabalhar com qualquer conjunto de dados, quer seja da pasta de trabalho atual, quer seja de outra pasta de trabalho na rede ou com outros formatos de dados, como por exemplo de arquivos .txt ou bancos de dados do Microsoft Access.
  • Manipulação de objetos : O VBA oferece métodos de criação e modificação dos objetos de uma planilha no Excel (assunto que será abordado nas lições do Módulo 6). Chamamos de objeto qualquer elemento do Microsoft Excel, por exemplo: uma planilha, uma faixa de células, um gráfico, etc.
  • Criação de funções definidas pelo usuário : Este é um dos maiores benefícios do VBA. Podemos criar funções que executam cálculos repetitivos. Por exemplo, vários planilhas podem conter um campo CPF ou CNPJ. Poderíamos criar, em cada planilha, o código necessário para a validação do DV do CPF ou CNPJ. Porém este procedimento não é o mais indicado, pois além da duplicação do código necessário a validação, teríamos dificuldades para fazer atualizações neste código, pois cada alteração necessária terá que ser feita em vários locais. O ideal é criarmos uma função para validação do DV (uma função deve ser criada dentro de um módulo. Trataremos disso mais adiante.). Em cada planilha, onde for necessária, chamamos a função, passando o valor do CPF como parâmetro. A função calcula o DV e retorna o resultado para a planilha. Desta maneira precisamos criar uma única função. Quando forem necessárias alterações, basta alterar a função (em um único local, ou seja, no módulo onde a função foi criada) e todos os formulários passarão a utilizar a versão atualizada da função.
  • Definição de condições e controle de fluxo: O VBA oferece uma variedade de comandos e estruturas para a realização de testes condicionais e para a repetição de um conjunto de comandos. Aprenderemos a utilizar todas as estruturas de controle de fluxo e testes condicionais, mais adiante.
  • Realização de cálculos complexos e solução de problemas que envolvem uma lógica complexa: Com macros é impossível a realização de cálculos mais complexos, simplesmente através da automação de comandos de teclado e mouse. Também não é possível a resolução de problemas que envolvem uma lógica complexa, como por exemplo cálculo do imposto de renda, recolhimentos de tributos, etc.

LIÇÃO 07: O AMBIENTE DE PROGRAMAÇÃO - O EDITOR VBA

O Microsoft Excel fornece um ambiente de programação bastante poderoso, com uma série de recursos que facilitam a criação de código VBA. Neste tópico vamos aprender a utilizar os aspectos básicos do Ambiente de Programação do VBA.

Se não tivéssemos disponível um Ambiente de Programação, teríamos que lembrar da sintaxe de todos os comandos, dos métodos e propriedades dos objetos. Convenhamos que isso é praticamente impossível, pois com o VBA temos acesso a milhares de objetos (é isso mesmo: milhares de objetos, comandos e funções. Por enquanto estou utilizando bastante o termo objeto, sem tê-lo ainda explicado. Mais adiante detalharei o conceito de classes, módulos e objetos). Cada objeto pode ter dezenas de propriedades, métodos e coleções. O ambiente de Desenvolvimento fornece uma série de facilidades para a criação de código VBA. Por exemplo, ao digitar o nome de um objeto e um ponto será aberta, automaticamente, uma lista com todos os métodos e propriedades deste objeto. Ao invés de lembrar do nome dos métodos/propriedades, basta selecioná-los em uma lista. Se selecionarmos um método, ao digitarmos o parênteses de abertura, será exibida uma lista com os argumentos esperados pelo método, bem como o tipo (texto, número, data, etc) de cada argumento. Se digitarmos um comando incorretamente, o Ambiente de Desenvolvimento emite uma mensagem e coloca em destaque o comando que foi digitado incorretamente. Estas são apenas algumas das facilidades fornecidas pelo Ambiente de Desenvolvimento do VBA.

Figura 5.15- O Editor VBA.

No lado esquerdo da tela temos duas janelas:

Project - VBA Project: Nessa janela são exibidos os vários elementos que fazem parte da Pasta de trabalho atual. Aqui são exibidas as planilhas e módulos da pasta de trabalho (arquivo .xls) carregado no Excel. Ao criarmos uma macro podemos cria-la em uma determinada planilha. Os módulos são utilizados para criar funções e procedimentos que podem ser chamados em todas as planilhas da pasta de trabalho atual. Aprenderemos mais sobre funções e procedimentos nas próximas lições.

Janela na parte de baixo: A janela abaixo da janela Project, exibe as propriedades do elemento selecionado na janela Project. Por exemplo, ao selecionar Plan1, na janela Project, na janela de baixo serão exibidas as propriedades de Plan1, conforme indicado na Figura 5.16:

Figura 5.16- Propriedades da Planilha.

  1. Feche o Editor do VBA e a planilha.

Nas próximas lições veremos mais algumas funcionalidades do Editor VBA.

LIÇÃO 08: VBA - DECLARAÇÃO DE VARIÁVEIS

Agora vamos iniciar o estudo de uma série de comandos e conceitos básicos da linguagem VBA. Esses comandos serão utilizados nas lições do Módulo 6, onde apresentaremos alguns exemplos práticos do uso do VBA para solução de problemas com o Excel.

Iniciaremos o nosso estudo de VBA pela definição do conceito de variáveis a aprendendo a declarar variáveis no VBA.

Nota: A medida que os conceitos forem sendo apresentados, faremos alguns testes. Para os testes utilizarei a macro AplicaNegrito. Para testar um determinado comando vamos acessar o código VBA da macro AplicaNegrito (conforme descrito na lição anterior) e inserir os comandos a serem testados. Em seguida voltaremos para a planilha e executaremos a Macro para testar os comandos. Para facilitar o processo de execução da Macro usaremos a combinação de teclas Ctrl+Shift+K, a qual está associada à macro.

Declaração de variáveis e "tipos" de dados:

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, a 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 as variáveis, de tal forma que o código fique mais claro e de fácil compreensão. Para declararmos uma variável, utilizamos o comando Dim, conforme exemplificado abaixo:

Dim x

Dim nome

Dim teste

Neste caso estamos apenas declarando o nome da variável, sem declarar de que tipo (texto,inteiro, data, etc) é a variável. 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 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. Neste caso o que impede de um campo numérico conter valores de texto ou vice- versa??

A sintaxe para o comando Dim é a seguinte:

Dim nome_da_variável As tipo_da_variável

Também podemos declarar mais do que uma variável, com um único comando Dim. Para isto, basta separar as variáveis, com vírgula, conforme exemplificado abaixo:

Dim x,y,z As String

Dim nome as Double

Dim teste1, teste2 As Integer

IMPORTANTE: Observe que definimos o "tipo" de cada variável. 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. Existem funções que conversão de tipo, conforme veremos mais adiante.

Também podemos utilizar variáveis que não foram, explicitamente, declaradas com o comando Dim. Com isso, a variável é criada na memória, no momento da sua utilização. Para fazer com que toda variável tenha que ser, explicitamente, declarada, antes de ser utilizada, devemos utilizar o seguinte comando na seção de declaração do módulo:

Option Explicit

Ao colocarmos este comando na seção de declaração do módulo, estamos definindo que toda variável deve ser declarada, antes de ser utilizada em uma expressão. Se tentarmos utilizar uma variável não declarada, será gerado um erro de compilação e a execução dos comandos é suspensa. Na Listagem 1, temos um exemplo simples de utilização de variáveis não declaradas explicitamente.

Listagem 1 - Utilização de variáveis não declaradas.