Você está na página 1de 10

1.

Conceito e Aplicação das Macros

Podemos dizer que as macros servem para:

1.1. Automatizar ações rotineiras e/ou demoradas

Por exemplo, se com certa frequência, extraio um relatório do sistema, faço


algumas formatações padrão como inserir uma coluna, excluir outras, inserir
fórmulas, nos mesmos locais, então, posso gravar macros para que após sua
gravação e futura execução elas façam os mesmos passos que o usuário que a
gravou, exatamente nos mesmos locais/células;

1.2. Conseguir soluções que não são nativas do Excel

Isso significa, que não se conseguem naturalmente através dele, mas


somente programando na linguagem VBA, que é linguagem própria para os
arquivos do pacote office. Por exemplo: Criar funções personalizadas (conforme
necessidade do desenvolvedor), interagir com o usuário através de perguntas e
respostas em caixas de diálogo e até mesmo desenvolver aplicações.

Concluísse então que as macros podem ser gravadas ou criadas por meio
de programação no Editor do Visual Basic (VBE). Em ambos as casos há
existência de código, mas ao gravar uma macro o próprio Excel transforma as
ações executadas em uma série de comandos.

2. Exibir Guia Desenvolvedor

Antes de gravar uma macro é preciso habilitar a guia Desenvolvedor que


por padrão não estará visível no Excel. Para ativá-la no Excel 2010 em diante,
basta clicar na guia Arquivo, em seguida clicar em Opções, clicar na categoria
Personalizar Faixa de Opções, na lista Guias Principais, clicar em
Desenvolvedor e em OK.
Para habilitar esta guia no Excel 2007, o usuário deverá clicar no Botão
Office e em Opções do Excel, na janela que se abrirá, marcar a caixa “Mostrar
guia Desenvolvedor na Faixa de Opções” e pressionar OK.

3. Habilitar Macros

Por se tratar de códigos de programação, é que alguém mal intencionado


poderá criá-las para transmitir vírus. Sabendo disso, a primeira vez que um
arquivo que contém macro é aberto, na parte superior do mesmo será
encontrada a Barra de Mensagens conforme figura abaixo. Se o arquivo for de
fonte confiável, basta clicar em Habilitar Conteúdo.

A mensagem acima aparece porque por padrão, a opção Desabilitar


todas as macros com notificação ficam marcada na guia Desenvolvedor, no
grupo Código, em Segurança de Macro.

3.1. Adicionar um Local Confiável

Para armazenar suas macros em locais considerados como confiáveis, o que


elimina a necessidade de “Habilitar o conteúdo” ao se abrir o arquivo, é preciso
abrir a Central de Confiabilidade. Para isso, na guia Desenvolvedor, no grupo
Código, após clicar no ícone Segurança de Macro, deve-se clicar em Locais
Confiáveis e logo em seguida, clicar em Adicionar novo local, escolher o
diretório onde os arquivos ficarão e se for o caso, marcar a opção: as subpastas
deste local também são confiáveis e pressionar o OK.

Obs.: Para se trabalhar com macros, inclusive baixando arquivos/modelos da internet até
mesmo para aprendizado, é importante que se tenha um antivírus atualizado.
4. Salvar pasta de trabalho para comportar as macros

Arquivos com macros deverão ser salvos em formato que suporta a


existência de macros, para isso, na janela Salvar Como, além dar um nome ao
arquivo, na caixa Tipo a opção Pasta de Trabalho Habilitada para Macro do Excel
deverá ser escolhida e logo após pressionar Salvar.

A extensão desse tipo de arquivo é XLSM.

5. Gravar macro

Para gravar uma macro, será preciso na guia Desenvolvedor, no grupo


Código, clicar em Gravar Macro. Conforme figura a seguir, deve-se digitar o
Nome da macro e um Atalho para a mesma, escolher onde ela funcionará,
através do campo Armazenar macro em, digitar algum lembre no campo
Descrição se for o caso e pressionar OK para iniciar a gravação.

Obs.: Os campos “Armazenar macro em” e “Descrição” não são obrigatórios para a
gravação de macros.

A partir desse momento todas as ações executadas no Excel serão gravadas,


como os cliques, as seleções e formatações feitas, independentemente do
tempo levado para executá-las, enfim, tudo que se fizer durante a gravação da
macro será repetido exatamente na mesma ordem posteriormente quando se
executar a macro.

A gravação da macro é parada ao clicar em Parar Gravação, no grupo


Código da guia Desenvolvedor.

6. Janela do Editor do Visual Basic (VBE) e seus componentes

O Editor do Visual Basic (VBE) é o ambiente utilizado para se escrever


códigos e procedimentos na linguagem de programação própria para os
aplicativos da suíte Office, ou seja, a linguagem Visual Basic for Applications
(VBA). Apesar de acoplado ao Excel, o VBE é demonstrado em uma janela
própria contendo um conjunto de ferramentas para a criação de macros. Para se
acessar a janela do VBE é preciso clicar em Visual Basic na guia
Desenvolvedor, no grupo Código.

Outra forma de acessar ao VBE é clicar no ícone Macros, que é o segundo


botão da esquerda dentro da guia Desenvolvedor. Na Janela Macro que se
abrirá, após escolher a macro chamada de Filtrar por exemplo e clicar em
Editar, a janela do VBE se abrirá conforme imagem abaixo:
6.1. Detalhando os componentes da Janela do VBE

Projeto – VBAProject: É o primeiro componente dessa janela, ou seja, o


Projeto de VBA. Para habilitar esta janela caso necessário, deve-se clicar em
Exibir e depois em Project Explorer. Dentro desta janela, todos os arquivos em
Excel abertos no computador irão aparecer em negrito com seu nome à frente.
No exemplo a seguir, temos apenas o arquivo Ex 01. Filtro Avançado e Macro
aberto no computador, por isso, somente ele aparece nos projetos. Dentro deste
projeto podemos ver as Plan, ou seja, as planilhas contidas no arquivo em
questão. Ainda no projeto em VBA, se encontram os módulos, que são os locais
onde as macros gravadas serão guardadas, resumindo, quando gravamos
macros, elas normalmente são alocadas no último módulo existente ou em um
novo módulo inserido automaticamente pelo Excel.

Ao clicar duas vezes em um módulo qualquer, o conteúdo dele é


apresentado na janela à direita do projeto em VBA. Outra forma de ver esta
janela é ao clicar no ícone Macros, que é o segundo botão da esquerda dentro
da guia Desenvolvedor, na Janela Macro que se abrirá, ao se escolher a macro
Filtrar por exemplo, basta clicar em Editar ou Depurar.

A imagem a seguir demonstra um módulo onde temos duas macros


demonstradas na linguagem VBA, ou seja, sempre que gravamos uma macro,
ela é traduzida pelo Excel para esta linguagem:
As Macros dentro dos módulos começam com Sub e terminam com End
Sub. Na figura acima, a primeira macro se chama Filtrar e a segunda é a Limpar,
por isso dos nomes Sub Filtrar e Sub Limpar respectivamente. Ambas as
macros citadas estão separadas por uma linha também automaticamente
inserida pelo Excel, o mesmo ocorre quando se busca uma macro pronta da
internet por exemplo e for preciso colá-la dentro de um módulo que já contém
uma ou mais macros, deve-se então colocá-la abaixo da frase End Sub, para
que o Excel as separe devidamente.

Nos módulos, as linhas verdes são comentários, apenas por conter uma
aspas simples (‘) à frente do texto, ou seja, estes comentários não têm ação
alguma na execução da macro, servem somente como lembretes.

A Tecla de Atalho e a Descrição na janela de Gravar Macro se utilizados,


serão apresentados no início da macro como comentários também.

A Janela propriedades indica todas características do objeto selecionado.


Por exemplo, ao selecionar uma das planilhas, as características dessa planilha
devem aparecer na janela Propriedades.
7. Executar Macros

As Macros podem ser executadas através de atalhos. Para isso, basta digitar
um Atalho no início da gravação da Macro conforme exemplo a seguir:

Também podemos executar Macros, ao clicar no ícone Macros, que é o


segundo botão da esquerda dentro da guia Desenvolvedor. Na Janela Macro
que se abrirá, todas as macros contidas neste arquivo serão apresentadas e ao
clicar duas vezes sobre a macro escolhida, a mesma será executada.
Outra forma de executar uma Macro é através de botões. Por sinal para criar
estes botões e vinculá-los a um macro, é bem simples, basta na guia
Desenvolvedor, clicar em Inserir, clicar no primeiro botão da primeira linha que é
o Botão (Controle de formulário).

Depois de escolher tal botão, deve-se clicar em qualquer célula que a janela
Atribuir Macro será aberta para que se selecione o nome da macro que se
deseja vincular ao referido botão, ao clicar duas vezes sobre a macro, o botão é
criado e aparecerá na tela selecionado, aproveitando que ele está selecionado,
pode-se alterar seu nome e depois clicar em qualquer célula para que ele não
fique mais selecionado. Assim todas as vezes que clicarmos sobre ele com o
botão esquerdo do mouse, ele executará a macro vinculada ao mesmo. Para
alterar o nome do botão, a altura, a largura do mesmo, ou ainda arrastá-lo, deve-
se pressionar o Ctrl e clicar sobre o mesmo.

Outra forma de executar uma Macro é, dentro do VBE, clicar na macro a ser
executada e pressionar o atalho (F5), ou mesmo clicar no botão Executar
Sub/UserForm conforme figura abaixo:
Para se executar uma macro automaticamente, basta nomeá-la como
Auto_open. Assim ela será executada sempre que a pasta de trabalho que a
contém for aberta. Exemplo:

8. Depuração e Edição de Macros

Ao clicar no ícone Macros, que é o segundo botão da esquerda dentro da guia


Desenvolvedor, na janela Macro que se abrirá, ao se escolher a macro que se deseja
analisar e clicar em Editar ou Depurar, chegaremos à tela do VBE, mais especificamente
no módulo onde a macro escolhida se encontra.

A opção Edição se diferença da Depuração pois na depuração aparecerá uma


linha amarela selecionando o nome da macro, ao pressionar o F8, a linha amarela sairá
do nome da macro e passará para a primeira linha executável da macro (os comentários
são apenas saltados), ao pressionar F8 novamente, a linha amarela passará para a próxima
linha executável da macro, executando assim a linha anterior, portanto, pode-se conferir
para que serve cada linha da macro pressionando o F8 e indo ao Excel averiguar o que
acaba de ser executado ao sair da linha anterior.
Após identificar o que cada linha executa, podemos ajustar o que for necessário,
por exemplo, a linha do código Range(“A1”).select, tem a finalidade de selecionar a
célula A1, caso o objetivo seja editar esta linha para que ela selecione a célula B20, basta
ajustá-la para Range(“B20”).select. Ao passar pela linha do End Sub a depuração é
finalizada.

A qualquer momento que se desejar interromper a depuração da macro, basta


clicar no botão Redefinir.

Obs.: Quando parte de uma macro não funcionar, uma mensagem aparecerá, e ao marcar a opção
depuração, a janela do VBE será aberta e a linha que apresenta erro na macro ficará em amarelo
para que se possa corrigir o que for necessário.

Podemos concluir que macros podem ser gravadas ou programadas, a gravação da


macro faz parte do escopo de nosso curso, já a programação que é literalmente escrever
as linhas de código em VBA, deve ser abordada em um curso específico que englobe
lógica de programação. Este é o caminho das pedras, é o início do trabalho com Macros,
a partir de agora, os interessados em aprender mais sobre programação em VBA podem
começar lendo o arquivo “Programming-in-VBA” que deixo em anexo no e-mail. O livro
indicado é “VBA e Macros Microsoft Excel 2013 - Alta Books”.

Você também pode gostar