Você está na página 1de 25

Associao Educacional Dom Bosco

Faculdades de Engenharia de Resende














Microsoft Excel 2003
Mdulo II Macros e Tabelas Dinmicas







Professores:

Eduardo Arbex
Mnica Mara
Tathiana da Silva





Resende
2010
Macro no Excel

Uma macro um pequeno programa que contm uma lista de instrues que
sero realizadas dentro de uma planilha no Excel. Sendo um repositrio de
operaes, uma macro, pode executar um conjunto de tarefas atravs de um
nico procedimento.

As instrues que formam o corpo da macro so escritas num cdigo prprio para
que o computador as possa entender, essa linguagem designada por VBA
Visual Basic for Applications.

Existem duas possibilidades de criao de macros:
1) Atravs do Gravador de Macros
2) Utilizando o editor e programando em Visual Basic for Applications

Gravar uma Macro

Menu Ferramentas > Macro -> Gravar nova Macro
Ou (para o Excel em ingls)

Tools / Macro / Record New Macro.


O nome (Macro name ou Nome da Macro) ser constitudo por um conjunto de
caracteres que identificaro a Macro e a sua funcionalidade.

Shortcut Key ou tecla de atalho composto por uma combinao de teclas que
podero ser utilizadas para executar uma macro

As macros podem ser armazenadas nas seguintes opes: This Workbook (nessa
pasta de trabalho), New Workbook (nova pasta de trabalho) ou Personal
Workbook (pasta de trabalho pessoal), sendo que cada uma corresponde a
macros de mbito diferente. Assim devero armazenar a macro na opo
ThisWorkBook (Nessa) para que ela esteja ativada sempre que o documento
estiver aberto, e para que ela esteja armazenada no prprio arquivo no correndo
o risco de ficar armazenada nas Macros do Excel.

No campo Description (Descrio), introduza um comentrio funo que poder
ser importante para que no seja esquecido o respectivo objetivo e funcionalidade
da macro criada.

Clique em OK para iniciar a gravao da macro neste momento ser exibida
uma toolbar indicando o estado de gravao.


Na toolbar Stop Record (Parar Gravao), existem dois botes: Stop Recording e
Relative Reference O boto de Stop Recording termina a gravao da macro, o
boto de Relative Reference seleciona o modo de gravao da macro se feito
com base em referncias relativas (boto selecionado) ou referncias absolutas.

No caso da toolbar Stop Record desaparecer, poder voltar a exibi-la fazendo no
menu a sequncia: View / Toolbars / Stop Record ou Visualizar / Barra de
Ferramentas / Parar Gravao (selecione a toolbar). Caso a toolbar no aparea
listada a gravao de macros no est ativada.

Nota: Tome ateno aos passos que d quando est gravando pois tudo ser
registrado, o que significa que quando for executar a macro, esses procedimentos
sero efetuados.

Exerccio

Objetivo: Gravar uma macro testando a diferena entre a execuo de macros
com referncias absolutas e relativas.

Macro com referncias Absolutas

1. Acione a gravao da macro. Atribua-lhe o Short Key (tecla de atalho) Ctrl+P
2. Certifique-se que o boto Relative Reference (referncia relativa) est
desativado.
3. Clique na clula B3.
4. Escreva AEDB
5. Formate a clula para Bold (Negrito), Itlico, tamanho 18, Small Caps, (utilize
o Format / Font ou Formatar / Fonte)
6. Na clula B4 escreva: Faculdades de Engenharia de Resende
7. Na clula B5 escreva: Cursos de Engenharia Eltrica com nfase em
Eletrnica e Produo Automotiva
8. Pare a gravao da macro. A macro est criada.
9. Apague tudo o que escreveu nas clulas da coluna B.
10. Clique na clula L8.
11. Carregue simultaneamente nas teclas Ctrl e P
12. O que aconteceu ?




Macro com referncias Relativas

1. Selecione a clula D5.
2. Acione a gravao da macro. Atribua-lhe o Short Key (tecla de atalho) Ctrl+R
3. Selecione o boto Relative Reference (Referncia Relativa).
4. Escreva AEDB na clula que havia sido selecionada.
5. Formate a clula para Bold, Itlico, tamanho 18, Small Caps, (utilize o
Format / Font)
6. Na clula D6 escreva: Faculdades de Engenharia de Resende
7. Na clula D7 escreva: Cursos de Engenharia Eltrica com nfase em
Eletrnica e Produo Automotiva
8. Pare a gravao da macro. A macro est criada.
9. Apague tudo o que escreveu nas clulas da coluna D.
10. Clique na clula L8.
11. Carregue simultaneamente nas teclas Ctrl e R
12. O que aconteceu? Porqu ?

Como funciona a gravao das macros

O Excel quando se grava uma macro cria um objeto designado por module no
workbook onde registra todas as operaes gravadas em linguagem Visual Basic
for Applications - VBA. Este mdulo no aparece no Excel com as planilhas.

Para ser visualizado necessrio abrir o Editor de Visual Basic for Applications:
1. Tools / Macro / Macros ou Ferramentas / Macro / Macros
2. Seleciona-se a Macro e clica-se no boto Edit
3. Poder visualizar na rea do lado direito o cdigo VBA que est associado s
macros que gravou. A poder executar as mesmas tarefas que num editor de
texto normal: escrever, apagar, copiar, mover, mas instrues de VBA.
4. Tente fazer a leitura do que est escrito e compreenda o procedimento da
macro.
Criando macros

Quando voc iniciar o gravador de macro voc pode escolher para anexar a macro
a uma tecla do teclado. Quando ela foi gravada voc apenas clicou na tecla que
voc escolheu e a macro por outro lado fez isto novamente. Desenvolva a macro
Excel com esta lio passo a passo sobre como usar o Gravador de Macros do
Excel.
1. Clique em Ferramentas /Macro /Gravar Macro
2. D um nome para a macro
3. Crie uma formatao qualquer em uma clula (alinhamento, centralizado,...)
4. Parar Macro
5. Salve o arquivo
6. Teste o arquivo em Ferramentas / Macro / Macro / Executar Macro
7. No esquea de mudar o nvel de segurana para Baixo em: Ferramentas /
Macro / Segurana / Baixo
Teste a macro e verifique se est funcionando.

Agora vamos criar um boto para executar esta macro. Clique em:
1. Exibir / Barra de Ferramentas / Personalizar / Comandos / Macro
2. Clique no boto que tem o desenho de um smile e arraste at a barra de
ferramentas Formatao
3. Clique em modificar seleo
4. Mude o nome do boto;
5. Altere a imagem;
6. Edite a imagem do boto;
7. Atribua a macro a este boto
O boto da macro est criado.

Agora vamos testar. Note que quando abrimos uma nova pasta e executamos a
macro o arquivo que foi criado a macro aberta tambm.
Para corrigir isso pressione Alt + F11. Abrir o modulo em VBA. Clique em Modulo
e l ter a macro. Digite antes do End Sub:
Workbooks(ALINHAMENTO.XLS).CLOSE

Vamos fazer outro exerccio sobre macro criando um boto que ir gerar um
relatrio:
1. Abra a planilha PlanilhaAluno.xls
2. Nomeie os intervalos (vendedores, produtos e preo)
3. Crie uma lista de validao para Vendedor e produto (dados / validao /
lista / Origem (=vendedores);
4. Crie uma barra de rolagem para a Quantidade;
5. Use =PROCV(B2;Preco;2) para buscar o preo;
6. Calcule o preo total =D2*C2

At aqui criamos a estrutura da planilha. Criaremos uma macro que gere um
relatrio sobre as vendas efetuadas, para isso:
1. Clique em Ferramentas / Macro / Gravar Nova Macro ;
2. D um nome para a macro;
3. Selecione os dados para constar no relatrio (Vendedor, Produto,
Quantidade, Preo. Unit e preo total)
4. Copie os dados (Crtl + C);
5. V para a planilha Relatrio de Vendas;
6. Pressione Crtl + para ir a ltima coluna da planilha;
7. Pressione Crt + para ir a primeira coluna da planilha;
8. Clique em Referncia relativa e pressione a setinha para ir uma linha
para baixo;






9. Clique novamente em Referncia relativa;
10. Clique em colar / Colar Especial / Valores;
11. Volte para a planilha Controle de Vendas e para a macro
12. Pressione Esc para tirar a seleo do copiar;
13. Clique na barra de ferramentas formulrio em Boto;
14. Associe a macro criada e este boto;
15. Teste a macro.

Executar uma Macro

A execuo de uma macro pode ser concretizada de diversas formas:
Tecla de Atalho Shortcut Key
Boto na Barra de Ferramentas (Toolbar)
Run / Executar
Comando no Menu
Editor de Visual Basic for Applications

Tecla de Atalho Shortcut Key

A associao a teclas de atalho realizada quando a macro criada.

Boto na Barra de Ferramentas (Toolbar)
Para associar uma Macro a um Boto:
1. View / Toolbars / Customize
Visualizar / Barra de Ferramentas /Customizar
2. Na janela do Customize selecione a guia Commands (Comandos)
3. Selecione a categoria Macro

4. Na rea dos Commands sero exibidos dois itens: Custom Menu Item e Custom
Button. Selecione este segundo e arraste-o com o mouse at Toolbar onde o
pretende inserir. Ateno s poder inserir o boto quando o ponteiro do mouse
ficar com a forma I. Nesse momento libertar o boto do mouse utilizado para
arrastar e verificar que ser criado um novo boto.
5. Na janela de Customize poder ainda utilizar dois botes que se encontram na
rea do Selected Command:
a) Description que exibe um texto explicando o que o comando
selecionado faz.
b) Modify Selection semelhante ao clique sobre o boto criado, exibe
uma srie de tarefas possveis para configurao do boto (ver
operaes seguintes).



6. Clique sobre o boto Modify Selection- abrindo um menu de tarefas possveis
para a configurao do boto
a) No ltimo grupo de configuraes existe uma opo designada por
Assign Macro. Esta opo permite indicar qual a macro que dever ser
executada sempre que se clica no boto;
b) No terceiro grupo existem 4 estilos diferentes de exibir o boto: s com
texto, com texto e imagem ou somente com imagem. Se selecionar o
estilo Texto e Imagem, ser exibido no boto alm da imagem o nome
associado;
c) Na opo Name indique o nome que pretende ver associado ao boto;
d) Para alterar a imagem associada ao boto poder: optar por uma
imagem diferente, alterar a que est a visualizar ou a construir a sua.
Para isso clique sobre a tarefa de Change Button Image.



Modificar uma Macro de um Boto

1. Tools / Customize
2. Arraste o boto da toolbar at ao documento
3. Solte-o

Comando Run/Executar

1. Tools / Macro / Macros
2. Na caixa de dilogo Macros seleciona-se a macro pretendida na lista da Macro
Name Clique sobre o boto Run

Associao de uma Macro a um Comando do Menu

1. View / Toolbars / Customize (Visualizar / Barras de Ferramentas / Customizar)
2. Na janela do Customize encontra-se na Guia Commands (Comandos)
3. Selecione a categoria Macro
4. Na area dos Commands ser exibido um item de Custom Menu Item,
selecione-o e arraste-o com o mouse at a uma posio do menu que lhe
interesse por exemplo pode introduzir numa das listas de opes do menu
(Arquivo, Visualizar,) ou ento criar como uma nova opo do Menu..



5. Para criar uma nova lista no menu dever :
a) Selecionar a categoria New Menu
b) Na rea dos Commands ser exibida a opo New Menu (Novo Menu), que
dever arrastar at barra dos menus
c) Poder alterar o seu nome clicando no boto de Modify Selection (Modificar
Seleo)
d) Esta nova lista ter o mesmo comportamento que a outras
6. Na janela de Customize poder ainda utilizar dois botes que se encontram na
rea do Selected Command:
a) Description que exibe um texto explicando o que o comando
selecionado faz.
b) Modify Selection semelhante ao clique sobre o menu ou comando de
menu criado, exibe uma srie de tarefas possveis para configurao

Colocando no Excel o Menu Criado

1. Tools / Customize
2. Arraste o Menu ou Comando do Menu at ao documento e solte-o.
Tabelas Dinmicas no Excel

Como introduo criaremos um primeiro Relatrio de Tabela Dinmica. Vamos
utilizar, como fonte de dados, uma lista de informaes sobre vendas, de uma
planilha do Excel. A lista composta dos seguintes campos:
Nmero do Pedido
Nome da Empresa
Data do Pedido
Cidade de Destino
Pas de Destino
Ano
Trimestre
Vendas
A planilha composta de 830 registros. Parte dos dados exibida na Figura a
seguir:


Na Lista da Figura anterior temos o que chamamos de uma listagem "bruta", ou
seja, sem nenhuma forma de totalizao, cruzamento ou agrupamento. Com base
na listagem "bruta", podemos fazer algumas anlises e perguntas, tais como:
Qual o total de vendas por trimestre para o ano de 1997?
Qual o total de Vendas para cada empresa, no segundo trimestre de 1996?

Alm de responder a essas perguntas (e outras tantas), seria importante ter uma
ferramenta que nos permitisse, rapidamente alterar um ou mais critrios. Por
exemplo, com um simples clique de mouse eu poderia passar a exibir o total de
vendas trimestrais para o ano de 1997, ao invs de para o ano de 1996. Tudo isso
possvel com o uso de Tabelas Dinmicas???

Ento vamos pratica, criando o nosso primeiro Relatrio de Tabela Dinmica.

Exemplo 1: Usar os dados da planilha, para criar um relatrio dinmico, onde
possamos analisar, facilmente, o total de vendas por Cliente, por trimestre. Usar o
campo Ano como Campo de pgina, para que possa ser feita a Filtragem das
vendas por ano.
1. Abra o Microsoft Excel.
2. Abra a planilha.
3. Selecione o comando Dados -> Relatrio de tabela e grfico dinmicos... Ser
aberto o Assistente de tabela dinmica e grfico dinmico. Na primeira etapa
do assistente devemos informar qual a fonte de dados que ser utilizada como
base para a tabela dinmica. No nosso exemplo usaremos os dados da lista na
prpria planilha do Excel. Certifique-se de que a opo Banco de dados ou lista
do Microsoft Excel esteja selecionada, conforme indicado na Figura a seguir:


4. Clique no boto Avanar para seguir para a prxima etapa do assistente.
5. Nessa etapa o Excel pergunta onde esto os dados que faro parte do relatrio
de tabela dinmica. Observe que, por padro, ele j sugere toda a faixa onde
est a lista de dados, conforme indicado na Figura a seguir. Caso seja
necessrio voc pode alterar a faixa de dados.


6. Clique no boto Avanar para seguir para a etapa final do assistente.
7. Nessa etapa voc define se o relatrio de tabela dinmica ser construdo na
prpria planilha onde esto os dados, ou em uma nova planilha. Selecione a
opo Nova planilha, conforme indicado na Figura a seguir e clique em OK.


8. Voc estar de volta ao Excel. Nesse momento o Excel exibe uma planilha
com as reas bem definidas da tabela dinmica (posteriormente existe a
descrio dos elementos que compem uma Tabela Dinmica) e tambm
exibe a barra de ferramentas Tabela dinmica. Nessa barra esto os campos
da fonte de dados. Para construir a tabela dinmica, basta arrastar cada
campo para a respectiva posio.
9. Na Figura a seguir temos a tela inicial, onde os campos ainda no foram
arrastados para as respectivas posies no relatrio de tabela dinmica.


10. No nosso exemplo vamos comear pelo campo Ano. Esse campo ser um item
de pgina, ou seja, ao selecionarmos um valor para o ano, o relatrio ser
filtrado para exibir o total de vendas apenas para o ano selecionado.
11. Arraste o campo Ano para a rea onde est escrito: Solte campos de pgina
aqui.
12. O campo Nome da Empresa ir formar as linhas do nosso relatrio, ou seja,
para cada cliente diferente, teremos uma linha diferente no relatrio.
13. Arraste o campo Nome da Empresa para a rea onde est escrito: Solte
campos de linha aqui.
14. O campo Trimestre ir formar as colunas do nosso relatrio, ou seja, para cada
trimestre diferente, teremos uma coluna diferente no relatrio.
15. Arraste o campo Trimestre para a rea onde est escrito: Solte campos de
coluna aqui.
16. Os itens do nosso relatrio sero formados pelas vendas.
17. Arraste o campo Vendas para a rea onde est escrito: Solte itens de dados
aqui.
18. Observe que, rapidamente, o Excel calcula, automaticamente o total de vendas
por Empresa e por trimestre, conforme indicado na Figura a seguir:
19. Observe que tambm calculado o Total Global, com a soma dos quatro
trimestres - coluna F, bem como o Total Global por cliente - linha 94.



Agora vamos aprender a utilizar os comandos que mostram a facilidade para obter
diferentes visualizaes dos dados de uma tabela dinmica no Excel.

Exemplo: Usar o campo de pgina - Ano, e o campo de linha - Nome da empresa
e o campo de coluna - Trimestre, para aplicar filtros Consulta Dinmica criada.

1. Abra a lista Ano, na parte de cima da tabela. Observe que so exibidos os
valores para os anos em que existem pedidos, conforme indicado na Figura a
seguir:


2. Clique no valor 1997 e depois clique em OK. Observe que os valores da tabela
dinmica so filtrados para exibir apenas os totais correspondentes aos
pedidos de 1997. Compare os valores desta Figura (somente pedidos para
1997) com os valores da figura com todos os pedidos.


3. Agora j tivemos, digamos assim, uma pequena idia do que possvel de ser
feito com tabelas dinmicas. Com um simples clicar de mouse, aplicamos um
filtro para o ano de 1997.
4. Vamos continuar testando as capacidades de filtragem da tabela dinmica.
5. Abra a lista Trimestre. Observe que so exibidos os valores para os trimestres
do ano de 1997, nos quais existem vendas. Cabe lembrar que estamos com o
filtro para o ano de 1997 ainda ativo. Caso no fossem exibidos os quatro
trimestres na lista, isso significaria que no houve vendas para os trimestres
que no estivessem sendo exibidos. Para o ano de 1997 existem vendas para
todos os trimestres, conforme indicado na Figura a seguir:


6. Vamos supor que voc queira exibir apenas as vendas para o segundo
semestre de 1997 (Trim3 e Trim4). Desmarque o Trimestre 1 e o Trimestre 2.
Clique em OK. Observe que os valores da tabela dinmica so filtrados para
exibir apenas os totais correspondentes aos pedidos do segundo semestre de
1997 (Trimestres 3 e 4). Compare os valores da primeira figura (somente
pedidos para 1997) com os valores da Figura a seguir (somente os pedidos
para o segundo semestre de 1997).


Vamos aprender a filtrar os dados usando o campo de pgina e tambm os
campos de coluna e de linha.

Exemplo: Voltar a exibir o total de vendas para todos os pedidos, ou seja, retirar
os filtros aplicados e aplicar novos filtros, por cliente. Adicionar os campos Pas de
Destino e Cidade de Destino como campos de pgina. Utilizaremos esses campos
para aplicar dois ou mais critrios de filtragem, como por exemplo: Pedidos para o
Brasil, cidade de So Paulo no ano de 1998.

1. Abra a lista Ano, clique na opo Tudo e depois clique em OK. Com isso
estamos removendo o filtro para o ano de 1997.
2. Abra a lista Trimestre e marque os quatro trimestres, conforme indicado na
Figura a seguir e clique em OK:


3. Agora estamos sem nenhum filtro aplicado Tabela Dinmica. O prximo
passo ser adicionar os campos Pas de Destino e Cidade de Destino, como
campos de pgina.
4. Parra arrastar os campos preciso que a barra de ferramentas Tabela
Dinmica, indicada na Figura a seguir, esteja sendo exibida:


Nota: Se a barra de ferramentas Tabela Dinmica no estiver sendo exibida,
selecione o comando: Exibir -> Barra de ferramentas -> Tabela dinmica.

5. Clique no campo Pas de Destino e arraste-o para a rea de campos de
pgina, ao lado do campo Ano.
6. Clique no campo Cidade de Destino e arraste-o para a rea de campos de
pgina, ao lado do campo Pas de Destino.
7. A sua planilha deve estar conforme indicado na Figura a seguir:


8. Agora podemos aplicar filtros por Ano, por Pas de Destino e por Cidade de
Destino. Vamos iniciar filtrando apenas o total de vendas para os pedidos do
Brasil.
9. Abra a lista Pas de Destino. Observe que so exibidos os valores para todos
os pases para os quais existem pedidos, conforme indicado na Figura a
seguir:

10. Clique em Brasil e depois clique em OK. Observe que os valores da tabela
dinmica so filtrados para exibir apenas os totais correspondentes aos
pedidos do Brasil.
11. Agora, dentro do Brasil, vamos filtrar apenas o total de vendas para o ano de
1997, ou seja, ser calculado o total de vendas, por trimestre, para o ano de
1997.
12. Abra a lista Ano. Observe que so exibidos os valores para os anos em que
existem pedidos.
13. Clique no valor 1997 e depois clique em OK. Observe que os valores da tabela
dinmica so filtrados para exibir apenas os totais correspondentes aos
pedidos de 1997 para o Brasil, conforme indicado na Figura a seguir:


14. Observe que no incio da planilha so exibidos os filtros que esto sendo
aplicados. Pas de destino Brasil e Ano = 1997.
15. Vamos filtrar um pouco mais. Vamos definir que seja exibido o total de vendas,
por trimestre, apenas para a Cidade de So Paulo, mantendo os critrios
anteriores, ou seja, ficaremos com Brasil So Paulo 1997.
16. Abra a lista Cidade de Destino. Observe que so exibidos os valores para
todos as cidades para as quais existem pedidos. Clique em So Paulo e depois
em OK. Pronto, ser exibido o total de vendas apenas para os pedidos que
atendem aos trs critrios: Brasil So Paulo 1997.
17. Observe que com o uso e tabelas dinmicas extremamente simples definir
e alterar critrios de filtragem. De uma maneira rpida e fcil, podemos obter
diferentes vises do mesmo conjunto de dados.