Вы находитесь на странице: 1из 15

1.

CRIAÇÃO DE MACROS

Macros são rotinas de programação em linguagem VBA(Visual Basic for Application)


para automatizar tarefas e ações nos aplicativos Office (Excel, Access, PowerPoint,
etc)

1.1. O Que São Macros Gravadas


No Excel é possível criar macros sem conhecer a linguagem VBA, pois esse aplicativo
disponibiliza uma ferramenta de gravação de macro. Na gravação de macro os
comandos (códigos de programação em VBA) são gerados automaticamente a partir
da realização dos procedimentos na própria planilha. Ou seja, o usuário executa os
procedimentos e o gravador de macros gera automaticamente os códigos, dessa
forma o usuário não necessita digitar os comandos na linguagem VBA.

A gravação de macro é muito útil para quem está iniciando o aprendizado da criação
de macros e da linguagem VBA (Visual Basic of Application) porém o gravador de
macro limita a criação de macros a somente comandos e ações feitos a partir da
planilha.

1.2. Gravando uma Macro


Iremos agora criar uma macro utilizando o gravador de macros do Excel. Para gravar
uma macro é aconselhável saber todos os procedimentos que deverão ser executados
durante a gravação. Ex.: Se desejamos excluir uma determinada coluna da planilha,
necessitamos saber como fazer esse procedimento no aplicativo.

Exemplo de gravação

No exemplo iremos criar uma macro para apagar o conteúdo de uma área da planilha.
A área será B2 : F8, conforme a figura abaixo
Procedimentos:

1) Clique em menu Ferramentas  Macro  Gravar nova macro.

2) Na nova janela Gravar macro que irá aparecer, você definirá alguns parâmetros:

 Nome do Macro(Obrigatório): Deve conter até 255 caracteres sem espaço em


branco entre os caracteres. Não poderá conter ponto, ou sinais do tipo: ? , ! , / , etc.

 Tecla de Atalho (Opcional): Será a tecla utilizada para executar a macro depois de
pronta. Geralmente deixa-se em branco, pois para executar a macro poderemos criar
botões para esse fim (isto será visto mais adiante).

 Armazenar Macro Em (Obrigatório):


- Esta Pasta de trabalho: Armazena a macro na pasta de trabalho ativa, é a maneira
mais usual para armazenar macros.
- Nova pasta de trabalho: Armazena a macro na pasta em uma nova pasta de
trabalho.
- Pasta de Trabalho pessoal de macros: Esta opção armazenará sua macro numa
pasta chamada Pasta Pessoal de Macros, localizada no diretório de inicio do
Excel, desta forma as macros armazenadas neste local estarão sempre
disponíveis quando o programa Excel for inicializado.

 Descrição (Opcional): É um comentário que você pode inserir a respeito de sua


macro. Não terá nenhum efeito sobre a macro
3) Em nosso exemplo, para o nome da macro digite: LimparConteudo e clique OK

Atenção: Neste momento foi dado início a gravação e tudo que for feito na planilha
será gravado em linguagem VBA.

4) Faça o procedimento de limpar o conteúdo na área B2 : F8. Selecione a área e


clique em Editar  Limpar  Conteúdo ou simplesmente clique na tecla DELETE
do teclado.

5) Agora clique em uma célula qualquer, simplesmente para retirar a seleção


anteriormente feita.

6) Chega o momento de parar a gravação, clique em Ferramentas  Macro 


Parar gravação - Atenção: nunca esquecer de Para Gravação.

Dica!! Antes de iniciar a gravação da macro pratique os procedimentos


sem gravar, se for o caso anote em um papel todos os comandos que terão
que ser feitos, assim você terá menos chance de errar e ter que refazer a
gravação.

1.2.1. Botão Para Acionar a Macro

Você poderá acionar uma macro de várias formas, a maneira mais fácil e cômoda é
através de objetos adicionados na planilha. Existe um objeto específico para executar
uma macro, ele está situado na barra de ferramentas formulários, para utilizá-lo faça o
seguinte:

Exiba a barra de ferramentas chamada Formulários (caso da barra ainda não esteja
sendo exibida). Clique em menu Exibir  Barra de Ferramentas  Formulários
Na barra formulários que irá surgir, clique no objeto Botão e solte o mouse, logo após
então, clique no local da planilha, onde deseja criar o botão.

Botão

Logo após soltar o botão do mouse aparecerá uma nova tela chamada “Atribuir
macro”, nesta tela selecione o nome da macro e clique em OK.

Obs.: Para testar a macro, basta agora clicar no botão inserido na planilha
1.2.2. Localizando uma macro no editor do VBA

Quando a macro é gravada, os comandos são transformados em código VBA. Ou


seja, todos os procedimentos que foram realizados durante a gravação geraram os
códigos de programação.

Para localizar uma macro, clique em Ferramentas  Macro  Macro. Na janela


selecione o nome da macro e clique em Editar

A janela do Editor do Visual Basic será aberta lhe posicionando exatamente dento do
código da macro escolhida. Mas tome cuidado!! qualquer alteração feita poderá
prejudicar a execução da macro.

Dica!! O Editor do VBA poderá ser aberto clicando ALT+F11, porém dessa
forma você mesmo terá que localizar a macro desejada.
Entendo melhor o código VBA

A programação em VBA gerada pela gravação possui uma série de códigos,


comandos, comentários, objetos, etc. O texto envolvido em cada procedimento é
dotado de uma série de cores diferentes, sendo que cada uma tem o seu significado,
isto ajuda a entender melhor os códigos.

As Cores dos códigos VBA

Cor Significado
Palavras-Chave da linguagem. Ex: Sub, End Sub, Function, If, Then, Else, While, Loop,
Azul
Sempre que escreve uma linha em linguagem VBA, o editor vai retificar a sintaxe da
linguagem por forma a indicar se existe ou não algum erro de escrita. Se for detectado um
erro a linha fica em vermelho e é exibida uma mensagem de erro, senão todas as palavras
Vermelho são reconhecidas, coloridas da cor da respectiva categoria e alteradas para letras maiúsculas
ou minúsculas, conforme esteja pré-definido.

Nome de variáveis, procedimentos, valores, operadores,…


Preto
Comentários introduzidos no seio dos procedimentos. Estes comentários servem para o
utilizador poder associar algumas explicações aos procedimentos realizados. As palavras
com esta cor são ignoradas no procedimento, não produzirão qualquer efeito na sua
Verde execução. Você poderá introduzir quantos comentários achar necessário para documentar
suas rotinas. Para introduzir comentários bastará que o caractere ( ‘ ) anteceda o texto a
introduzir.

Um sombreado amarelo poderá aparecer sobre a linha que identifica um procedimento. Esta
cor simboliza a ocorrência de um erro na execução do respectivo procedimento e o estado de
execução do mesmo agora está parado, mas ainda em execução. Quando isto acontecer
Amarelo você não deverá voltar a dar ordem de execução do procedimento, sem antes clicar em
redefinir na barra de ferramentas do VBE.

1.2.3. Inserindo Caixa de Mensagem

Caixas de Mensagem ou MsgBox são muito úteis para “se comunicar” com quem
estiver utilizando as macros.

As Caixas de Mensagem são relativamente simples de serem feitas, porem deverão


ser escritas em VBA diretamente dentro da macro em questão.

Exemplo:

Iremos inserir uma Caixa de Mensagem na macro LimparConteudo


Essa mensagem irá comunicar ao usuário que a macro foi executada com sucesso.

1) Primeiro vamos até o código da macro LimparConteudo. Clique em Ferramentas


 Macro  Macro. Na janela selecione o nome da macro e clique em Editar
2) Posicione o curso do editor entre a última linha de código e a instrução End Sub.
Adicione algumas linhas clicando ENTER e escreva a seguinte instrução:

MsgBox " Macro Realizada com Sucesso! " , vbInformation , " MACRO TREINAMENTO "

3) Pronto!! Volte à planilha e acione a macro. Você irá ver que ao final da execução irá
ser mostrada uma caixa da seguinte forma:

Comentário sobre a MsgBox

Poderão ser inseridas quantas Msgbox você achar necessário em uma macro

O que faz…
1. Exibe na Tela uma janela com uma mensagem.
2. Espera que o utilizador acione um dos botões.
Sintaxe e os Parâmetros da MsgBox

A Msgbox possui basicamente 03 parâmetros: Texto da caixa, Estilo botões e Texto


do título da cx

Obs.: Dos 03 parâmetros, somente o primeiro(Texto da caixa) é obrigatório, sendo


que todos os outros quando ignorados assumem valores atribuídos por padrão.

MsgBox “Texto da caixa” , Estilo botões , “Texto do título da cx”

Título Caixa

Estilo Botão Texto Caixa

Estilos de Botões que podem ser atribuidos a Msgbox

O estilo de botões define o tipo da caixa, ou seja, se ela terá: um, dois, ou três botões
e se a apresentação gráfica será: Informação, Exclamação, Questionar ou Criticar.

Exemplos:

Estilo: VbInformation

MsgBox "Macro Realizada com Sucesso!", vbInformation,"MACRO TREINAMENTO"


Estilo: VbExclamation

MsgBox "Macro Realizada com Sucesso!", vbExclamation,"MACRO TREINAMENTO"

Estilo: VbCritical

MsgBox "Macro Realizada com Sucesso!", vbCritical, "MACRO TREINAMENTO"

Estilo: VbQuestion

MsgBox "Macro Realizada com Sucesso!", vbQuestion, "MACRO TREINAMENTO"

Os Estilos Existentes

Tipo de Botão Descrição


VbOKOnly Exibe somente o botão de OK.

VbOKCancel Exibe os botões OK e Cancelar

VbAbortRetryIgnore Exibe os botões Anular , Repetir, e Ignorar

VbYesNoCancel Exibe os botões Sim, Não, e Cancelar .

VbYesNo Exibe os botões Sim e Não.

VbRetryCancel Exibe os botões Repetir e Cancelar.

VbCritical Exibe o ícone de Mensagem de Erro Fatal.

VbQuestion Exibe o ícone de Questionamento.

VbExclamation Exibe o ícone de Mensagem de Atenção.


VbInformation Exibe o ícone de Mensagem de Informação.

VbDefaultButton1 O primeiro botão é o selecionado por padrão.

VbDefaultButton2 O segundo botão é o selecionado por padrão.

VbDefaultButton3 O terceiro botão é o selecionado por padrão.

VbDefaultButton4 O quarto botão é o selecionado por padrão.


Application modal – o utilizador só depois de responder à MsgBox é que poderá
VbApplicationModal dar continuidade ao trabalho na aplicação corrente.
System modal - – o utilizador só depois de responder à MsgBox é que poderá dar
VbSystemModal continuidade ao trabalho em qualquer aplicação em curso no sistema.

Outro Exemplo de Caixa:

No exemplo abaixo foi ignorado o parâmetro Estilo de Botões . Dessa forma a caixa
assume um estilo padrão: 01 botão sem apresentação gráfica.

MsgBox “Erro de Sintaxe !!!”, , “Mensagem de Erro”

Na janela será exibida a mensagem “Erro de Sintaxe”, o botão exibido será o de OK


(por padrão) e o titulo da janela será “Mensagem de Erro”.
1.2.4. Gravação com Referência Absoluta e Relativa

Toda vez que você grava uma macro é possível determinar que tipo de gravação
deseja em relação ao deslocamento pelas células da planilha.

Existem dois tipos de gravação as de endereço absoluto e relativo. Essa escolha é


feita através da barra “Parar Gravação” na opção Referência Relativa.

Referência Relativa / Absoluta

Diferença entre Gravação com Referência Absoluta e Relativa

Gravação com Referencia Absoluto:

Neste tipo de gravação os endereços de células que foram dadas como referencia
serão da forma absoluta.

Exemplo: Quando iniciou a gravação você estava na célula D11 então selecionou a
célula A5 e clicou copiar e logo em seguida selecionou a célula D5 e clicou colar e
parou a gravação; quando executar a macro os comandos serão feitos exatamente
nas mesmas células A5 e D5, não importando qual célula estiver selecionada no
momento da execução da macro.

Gravação com Referencia Relativo:

Já neste tipo os endereços de células serão gravados o deslocamento (direção) feito


durante a gravação da macro.

Exemplo: Quando iniciou a gravação você estava na célula D11 então selecionou a
célula A5 e clicou copiar e logo em seguida selecionou a célula D5 e clicar colar e
parou a gravação, os endereços das células gravados na macro não serão A5 e D5 e
sim o deslocamento que foi feito durante a gravação. Ou seja, da célula D11 para a
célula A5 você se deslocou 3 colunas para a esquerda e 6 linhas para cima.
Isso fará toda a diferença, pois a macro para copiar e colar nas células A5 para D5 só
será realizado nessas células se no momento de executar a macro a célula
selecionada for a D11, pois dessa forma o caminho a seguir a partir de D11
posicionará exatamente nas células desejadas (A5 e depois D5)

Serão raras as vezes que você necessitará realizar uma gravação em referencia
relativa, a maioria das vezes a opção será por gravação absoluta.

Alternado entre Referência Absoluta e Relativa

A troca entre opção relativa e absoluta é feita no botão Parar Gravação que surge
quando a gravação é iniciada. A troca poderá ser feita quantas vezes desejar durante
a gravação da macro, clicando no botão situado à direita da barra.

Não Pressionado Pressionado


Gravação ABSOLUTA Gravação RELATIVA

 Caso você encerre uma gravação em relativo; esta opção se manterá para o início
da próxima gravação e vice versa.

ATENÇÃO!!  Se a barra Para Gravação for fechada (canto superior


esquerdo da barra), ela não mais voltará a ser exibida. Caso necessite
que ela retorne, faça o seguinte:

1) Clique em Ferramentas  Personalizar


2) Na nova janela que aparecerá Escolha a Guia: Barra de Ferramentas e nela
marque a opção Parar Gravação em seguida clique Fechar.
Pronto! A barra voltará a ser exibida até que seja fechada novamente.
1.2.5. Níveis de Segurança Para Execução da Macro

O Excel possui um controle de segurança para a execução das macros. Esse conceito
é muito importante, pois não adiantará você ter macros, mas não poder executá-las
em razão do nível de segurança no qual o seu aplicativo está configurado.

Existem 03 níveis de segurança para na versão Office 2000 e 04 níveis de segurança


na versão Office XP em diante.

Para acessar e alterar o nível, clique em menu Ferramentas  Macro 


Segurança...

Na nova janela que irá surgir, você poderá escolher o nível: Alto, Médio , Baixo

O padrão de segurança quando o Excel é instalado é o nível Alto. Então caso você
não altere esse nível suas macros não poderão ser executadas. O recomendável é
alterar essa opção de configuração para o nível Médio.
Com o nível médio configurado para o aplicativo, irá surgir uma caixa de diálogo toda
vez que um arquivo contendo macros for aberto. Na janela aparecerá você poderá
optar em ativar (aceitar) e desativar (rejeitar) a execução das macros.

DICA: Quando for abrir um arquivo com macro em uma outra máquina, verifique
primeiramente a configuração do Excel em relação ao nível de segurança das macros.
Para poder ativar as macros, antes de abrir o arquivo configure o Excel para nível de
segurança médio, conforme ensinado nesse tópico.

Вам также может понравиться