Escolar Documentos
Profissional Documentos
Cultura Documentos
Este curso de autoria de Jlio Battisti, e faz parte do site www.juliobattisti.com.br. Visite o site
e confira sempre novos cursos (Excel Bsico e Avanado, Access Bsico e Avanado, PowerPoint
e muito mais), dicas de livros e sites, artigos sobre Certificaes Microsoft, simulados gratuitos
em Portugus, com respostas e comentrios, resumos para os exames MCSE e muito mais.
Clique aqui e confira.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Uma lista contm dados relacionados a um determinado assunto. Por exemplo, voc
poderia ter uma lista com dados sobre os funcionrios da sua empresa ou com a
lista dos pedidos efetuados em um determinado perodo. Uma lista como se fosse
uma tabela de um banco de dados, onde cada coluna representa um campo da tabela e
cada linha um registro.
Use somente uma lista em cada planilha. O ideal que no exista nenhuma outra
demais dados. Para isso mantenha, pelo menos, uma linha e uma coluna em branco,
entre a lista e os demais dados.
Nota: Os dados utilizados nos exemplos deste mdulo, foram importados a partir da tabela
Pedidos, do banco de dados northwind.mdb, o qual instalado durante a instalao do
Microsoft Office. Veremos mais detalhes sobre a importao de dados nas prximas lies
deste mdulo.
No exemplo da Figura 1.2 uma lista, na qual so listados os diversos pedidos para uma
determinada empresa. Observe que a primeira linha contm os nomes dos campos. Cada coluna
representa um campo. A primeira coluna o Nmero do Pedido, a segundo o Cdigo do Cliente,
a terceira a data do Pedido e assim por diante. Cada linha representa um registro completo.
Por exemplo, a segunda linha contm todas as informaes (com exceo dos itens do pedido)
sobre o cabealho do pedido 10248.
Neste Mdulo aprenderemos a fazer as seguintes operaes com Listas de dados no Excel:
Resumo do Mdulo 1.
Estas operaes so especialmente teis quando queremos ter diferentes vises dos dados de
uma lista. Por exemplo, voc pode querer pesquisar apenas os pedidos para o Brasil, no ano
de 1996; ou todos os pedidos para o Brasil e tambm para os EUA que ocorreram em um
determinado perodo e assim por diante.
Para encerrar o mdulo, trataremos sobre o uso de Critrios calculados e sobre a criao de
Subtotais para a anlise de dados. Veremos apenas uma introduo sobre o uso de Subtotais.
Este assunto ser detalhado no Mdulo 4 Anlise, Cenrios e Consolidao de Dados.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nesta lio vamos tratar sobre a importao de dados a partir de arquivos do tipo texto.
Existem dois formatos padro quando se trata de arquivos do tipo texto. Antes de
aprendermos a fazer a importao para o Excel, vamos apresentar os dois formatos de texto
mais comumente utilizados.
Na Figura 1.3 temos um exemplo de arquivo de texto, onde os dados esto no formato tamanho
fixo.
Neste formato cada campo comea em uma determinada coluna e termina em uma posio fixa.
Por exemplo o Nmero do Pedido comea na posio 1 e termina na posio 5, o campo Cdigo
do Cliente comea na posio 12 e termina na posio 17. Observe que existe espao em
branco entre as posies 6 e 11. O mais comum que no exista este espao em branco entre
os campos. Cada linha do arquivo forma um registro completo.
Na Figura 1.4 temos um exemplo de arquivo de texto, onde os dados esto no formato com
separador de campos.
Neste formato cada linha contm um registro completo, porm os campos so separados por um
determinado separador, que no exemplo da Figura 1.4 o ponto-e-vrgula (;). Cada linha
contm um registro completo. Podemos ter diferentes separadores, sendo que um dos mais
comuns a vrgula. Arquivos cujo separador a vrgula podem ter uma extenso .csv -
Comma Separated Value (Valores separados por vrgula). Arquivos .csv podem ser abertos
diretamente pelo Excel (basta dar um clique duplo no arquivo que este ser aberto
diretamente no Excel.
O formato com separador de campos mais facilmente reconhecido pelo Excel e menos
propenso a gerar erros durante a importao. Sempre que possvel, procure obter os dados
neste formato, ao invs do formato de tamanho fixo.
Importando dados de um arquivo de texto O comando Dados -> Obter dados externos...:
Vamos aprender a fazer a importao de dados para o Excel, a partir de um arquivo do tipo
Texto. Aprenderemos a fazer a importao atravs de um exemplo prtico. Vamos criar uma
nova planilha, salv-la na pasta C:\ExcelAvanado e importar dados para dentro desta
planilha.
Exerccio 01: Criar uma nova planilha, salv-la na pasta C:\ExcelAvanado com o nome de
Exemplo 01.xls. Importar para esta planilha, os dados do arquivo PedidosDelimitado.txt.
Para fazer o exerccio proposto siga os seguintes passos:
1. Abra o Excel.
5. Clique no boto Salvar. OK, a planilha Exemplo 01.xls foi criada. Agora vamos
importar o contedo do arquivo PedidosDelimitado.txt.
www.juliobattisti.com.br
6. Selecione o comando Dados -> Obter dados externos -> Importar arquivo de
texto...
7. Ser aberta a janela Importar arquivo de texto, na qual voc deve informar o
arquivo onde esto os dados a serem importados. Navegue at a pasta C:\ExcelAvanado e
marque o arquivo PedidosDelimitado.txt, conforme indicado na Figura 1.6.
10. Na primeira etapa do assistente voc deve informar o formato dos dados. No nosso
exemplo, certifique-se de que a opo Delimitado esteja selecionada, conforme indicado na
Figura 1.7. Nesta etapa voc tambm pode definir em qual linha iniciar a importao, por
padro a importao inicia a partir da primeira linha.
12. Na segunda etapa do assistente voc deve informar qual o caractere utilizado
como separador de campo. No nosso exemplo, est sendo utilizado o ponto-e-vrgula. Marque
a opo ponto-e-vrgula, conforme indicado na Figura 1.8. Aps marcar o ponto-e-vrgula
14. Ser exibida a ltima etapa do assistente de importao. Nesta etapa voc pode
definir o tipo de dado para cada campo que est sendo importado. Voc tambm tem a opo
de no importar determinados campos. Para definir o tipo de dados de um determinado campo,
clique no cabealho do campo para selecionar toda a coluna. Em seguida clique no tipo
desejado (Geral, Texto ou Data). Se no quiser importar uma determinada coluna, basta
marc-la e depois clicar em No importar coluna (ignorar). O boto Avanado permite que
voc defina qual o smbolo de separador decimal, que por padro a vrgula e o smbolo de
milhar, que por padro o ponto. Estas opes so teis quando voc estiver importando
dados que esto no formato fora do padro, como por exemplo, o padro americano que usa o
ponto como separador decimal e a vrgula como separador de milhar.
16. Clique no boto Concluir. Surge uma tela perguntando se voc deseja importar os
dados para a planilha atual ou para uma nova planilha. Certifique-se de que a opo
Planilha existente esteja marcada e d um clique em OK. Pronto, os dados sero importados
para o Excel, conforme indicado na Figura 1.10.
Nota: importante salientar que nenhum vnculo mantido entre os dados que foram
importados e o arquivo original. Se os dados forem modificados, o arquivo original no
ser modificado e vice-versa.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Neste lio aprenderemos a acessar dados que esto em arquivos do tipo .dbf. Arquivos .dbf
so arquivos no formato do Dbase III, Dbase IV ou Dbase V. O Dbase foi um dos gerenciadores
de banco de dados mais utilizado na poca do MS-DOS. O Clipper, uma das linguagens mais
utilizadas para a criao de aplicaes de banco de dados, na poca do MS-DOS, tambm
trabalhava com arquivo no formato .dbf. Por isso bastante provvel que, em algum momento,
voc venha a se deparar com dados no formato .dbf.
Conforme veremos nesta lio, extremamente simples acessar dados de arquivos .dbf a
partir do Excel. Vamos, novamente, utilizar um exemplo prtico. Abriremos o Excel e em
seguida vamos abrir o arquivo Pedidos.dbf, que est disponvel na pasta C:\ExcelAvanado.
Em seguida utilizaremos o comando Arquivo -> Salvar como, para salvar os dados em um
arquivo chamado Exemplo 02.xls. Ento, mos obra.
1. Abra o Excel.
Nota: importante observar que, neste caso, no foi feita uma importao de dados. Como o
Excel reconhece o formato .dbf, acessamos os dados diretamente a partir do arquivo
Pedidos.dbf. Na prtica, isto significa que, se fizermos alteraes nestes dados vamos
alterar o prprio arquivo Pedidos.dbf. O Excel funciona apenas como uma ponte e uma
interface para termos acesso aos dados do arquivo .dbf.
7. Agora vamos salvar estes dados no formato de um arquivo .xls. Fazendo isso
teremos duas cpias separadas dos dados. Uma que permanece no arquivo original,
Pedidos.dbf. Outra na nova planilha que ser criada Exemplo 02.xls. As duas cpias no
mantm nenhuma espcie de vnculo. Se fizermos alteraes na planilha Exemplo 02.xls, estas
10. Na lista Salvar como tipo:, selecione Pasta de trabalho do Microsoft Excel 97-
2000...
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
importante salientar que, usando este procedimento, nenhum vnculo ser mantido
entre os dados que esto no Microsoft Access e a planilha com os dados
exportados. Em outras palavras, ao alterarmos os dados originais, os dados da
planilha no sero alterados e vice-versa, ou seja, so duas cpias completamente
independentes dos dados.
http://www.juliobattisti.com.br/accbasico/accessbasico.asp.
Neste curso voc aprende como abrir um banco de dados do Access, como criar
Tabelas, Relacionamentos, Consultas, Formulrios, Relatrios e Macros.
Conforme veremos nesta lio, bem simples exportar dados de uma tabela do
Microsoft Access para uma planilha do Excel. Quando os dados so exportados, uma
nova planilha ser criada. Se um planilha, com o mesmo nome da que est sendo
criada, j existir, o Access perguntar se desejamos excluir a planilha existente
e criar uma nova. No possvel manter a planilha existente e apenas acrescentar
os dados que esto sendo exportados.
Agora vamos abrir o arquivo Exemplo 03.xls e conferir se os dados foram realmente exportados
com sucesso.
1. Abra o Excel.
Com isso encerramos o nosso estudo sobre importao e exportao de dados com o Microsoft
Excel. A partir da prxima lio, aprenderemos a classificar, organizar e filtrar as listas
de dados de uma planilha do Excel.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
algumas observaes em relao aos cuidados que devem ser tomados, quando
classificamos listas cujos valores so obtidos a partir de frmulas calculadas. e
veremos mais algumas observaes sobre a classificao de listas.
1. Abra o Excel.
5. Clique em Abrir.
sugiro que voc insira uma linha em branco antes dos dados e digite rtulos para
cada uma das colunas.
11. Primeiro vamos classificar pelo campo Pas. Na lista Classificar por
selecione Pas, clique em Crescente e clique em OK. A listagem de Pedidos ser
classificada em ordem alfabtica pelo campo Pas, conforme indicado na Figura
1.18.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Voc tambm poderia classificar pelo Pas, depois pela Cidade e, dentro de cada
Cidade pelo Nmero do pedido ou pela Data do pedido.
Para classificar por mais de trs colunas voc precisa dividir o processo de
classificao em etapas. Por exemplo, se voc quiser classificar pelo Pas,
dentro do Pas pela Cidade, dentro da Cidade pela Data do pedido e, dentro de uma
mesma Data pelo Nmero do pedido, basta seguir as seguintes etapas:
Observe que para classificar por mais de trs colunas, vamos classificando,
coluna a coluna, da mais especfica Nmero do pedido no nosso exemplo, para a
mais geral Pas no nosso exemplo.
Agora vamos fazer um exemplo prtico, onde vamos classificar uma listagem de
Pedidos com base nas colunas Pas, Cidade e Nmero do pedido.
1. Abra o Excel.
5. Clique em Abrir.
Ordem de classificao -> Uma forma de organizar os dados com base em valor ou
tipo de dados. Voc pode classificar os dados em ordem alfabtica, numrica ou de
data. As ordens de classificao usam uma ordem crescente (1 a 9, A a Z) ou
decrescente (9 a 1, Z a A).
Apstrofos (') e hfens (-) so ignorados, com uma exceo: se duas seqncias de
caracteres de texto forem iguais exceto pelo hfen, o texto com hfen
classificado por ltimo.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
BCCKL
ADLKJ
CFFYK
LDDAC
Observe que esta lista no est em ordem alfabtica. Para criar uma ordenao de
acordo com esta lista, ou seja, primeiro as linhas para o produto BCCKL, depois
as linhas para o produto ADLKJ e assim por diante, voc deve criar uma lista de
ordenao personalizada. Este ser o assunto desta lio. Por padro o Excel j
cria listas personalizadas para os dias da semana (por extenso e abreviado) e
para os meses do ano (por extenso e abreviado).
1. Abra o Excel.
5. Clique em Abrir.
KOENE
ALFKI
DRACD
QUICK
listados primeiro os pedidos para o cliente KOENE, em seguida para ALFKI e assim
por diante.
11. Para criar uma nova basta digitar os valores da lista, no campo
Entradas da lista, uma entrada em cada linha, conforme indicado na Figura 1.23:
12. Aps ter digitado os valores da lista, basta clicar no boto Adicionar.
A nova lista ser criada e exibida no campo Listas personalizadas, abaixo das
listas j existentes.
14. Agora vamos classificar a planilha com base nos valores da lista recm
criada.
19. Para informar ao Excel que, ao invs da ordem alfabtica padro, deve
ser usados os valores da lista, clique no boto Opes...
KOENE
ALFKI
DRACD
QUICK
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Por exemplo, podemos filtrar uma lista de Pedidos para que sejam exibidos apenas
os pedidos para o Brasil; ou apenas os pedidos em que o pas Brasil e a Cidade
So Paulo. Podemos avanar mais ainda na definio de critrios de pesquisa.
Por exemplo, podemos fazer com que sejam exibidas apenas os pedidos para o
Brasil, cidade de So Paulo ou Campinas, para o ano de 1997. Observe que estamos
definindo trs critrios de filtragem:
Pas = Brasil
Filtrar uma maneira rpida e prtica para que possamos trabalhar apenas com um
conjunto reduzido de linhas. Quando aplicamos um filtro a uma lista, somente
sero exibidas as linhas que atenderem aos critrios especificados. Uma vez
removidos os filtros, todas as linhas voltaro a ser exibidas.
Figura 1.26 Listas criadas, no cabealho das colunas, com o uso do AutoFiltro.
Com o uso de filtros muito mais fcil fazer anlise dos dados de uma lista. Por
exemplo, se voc deseja analisar apenas os dados de vendas para uma determinada
regio, ou que atendam determinados critrios. Basta aplicar os filtros para que
sejam exibidas apenas as linhas desejadas e, em seguida, efetuar os clculos e as
anlises necessrias.
Tambm possvel copiar os dados filtrados para uma nova planilha ou exporta-los
para um dos formatos suportados pelo Excel.
Critrios.
No exemplo da figura 1.27 esto sendo filtrados apenas os pedidos com vendas
entre 5000 e 8000 ou menores do que 500. Basta alterar os valores desta faixa,
para aplicar um novo conjunto de critrios de filtragem e, com isso, obter um
novo conjunto de registros.
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
Importante: Quando voc seleciona um valor para AutoFiltro, em uma das colunas,
este valor permanece ativo. Por exemplo, selecionamos Brasil na coluna Pas. Este
filtro est ativo no momento. Se agora voc for na lista de valores do campo
14. Certifique-se de que todas as linhas esto sendo exibidas, ou seja, que
nenhum filtro esteja sendo aplicado. Caso algum filtro esteja sendo aplicado,
selecione o comando Dados -> Filtrar -> AutoFiltro para excluir os filtros e em
seguida selecione o comando novamente (Dados -> Filtrar -> AutoFiltro) para
voltar a exibir as listas de AutoFiltro, nas colunas dos campos.
15. Vamos iniciar filtrando apenas os pedidos para o Brasil. Para fazer
isso abra a lista de valores da coluna Pas e selecione Brasil, conforme indicado
na Figura 1.28.
17. Vamos aplicar um filtro para serem exibidos apenas os pedidos (mantendo
Brasil e So Paulo) para o cliente FAMIA. Abra a lista de valores da coluna
Cliente e selecione FAMIA. Observe que sero exibidos apenas os pedidos para o
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
10. Para fazer isso abra a lista de valores da coluna Pas e selecione
Alemanha. Feito isso j ser aplicado um filtro onde sero exibidos apenas os
pedidos para a Alemanha. O prximo passo definir o filtro, dentro do conjunto
de linhas da Alemanha, para exibir apenas os pedidos com frete maior do que R$
100,00.
igual a
diferente de
maior do que
maior ou igual a
menor do que
menor ou igual a
15. Clique em OK. Observe que sero exibidas apenas as linhas para a
Alemanha (filtro definido no item 10) e com valores de frete maior do que 100,
conforme indicado na Figura 1.34:
Figura 1.34 Pedidos para a Alemanha com frete maior do que 100.
16. Agora vamos retirar o filtro para o valor do frete e definir um filtro
para uma faixa de Datas: Entre 01/01/1997 e 31/12/1997.
18. Agora vamos definir o filtro para o campo Data. Abra a lista de valores
do campo DtPedido e selecione a opo Personalizar... Ser exibida a janela
Personalizar AutoFiltro.
21. Clique em OK. Sero exibidos apenas os pedidos para a Alemanha no ano
de 1997, conforme indicado na Figura 1.36:
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
12. Clique em OK. Sero exibidos apenas os pedidos para os pases em que a
primeira letra do nome est na faixa de A at H, conforme indicado na Figura
1.38:
Nota: Para campos do tipo texto voc pode utilizar os caracteres coringa * e ?. O
* significa, literalmente, qualquer coisa. O ? significa um nico caractere. Os
exemplos a seguir, aplicados ao campo Pas, ajudam a esclarecer o uso destes
caracteres:
A* -> Retorna todos os pases que iniciam com a letra A, independentemente do que
vem aps a primeira letra, ou seja, qualquer coisa aps a primeira letra.
A*A -> Todos os pases em que a primeira letra A e a ltima letra tambm A
(Alemanha, Argentina, etc), independentemente (qualquer coisa) do que est entre
a primeira e a ltima letra.
13. Agora, dentro dos pases j filtrados, vamos pedir que sejam exibidos
apenas os 20 com maior valor de frete. Neste caso vamos usar a opo 10
primeiros. O nome da opo um pouco estranho, mas ao selecionar esta opo,
podemos selecionar qualquer nmero de registros, tanto os primeiros (maiores
valores do campo), quanto os ltimos (menores valores do campo); tambm podemos
selecionar um percentual do nmero de linhas a ser exibido. Por exemplo, se
tivermos 100 linhas e pedirmos para exibir as 20% maiores, sero exibidas as 20
linhas, com os maiores valores no campo que est sendo filtrado.
15. Na lista Mostrar voc seleciona se deseja que seja exibido os maiores
valores (Primeiros) ou os menores valores (ltimos). No campo no meio da janela
voc define o nmero ou o percentual de linhas a ser exibidas. Na ltima lista
voc define se deve ser exibido um determinado nmero de linhas (opo Itens) ou
um percentual do nmero de linhas (opo Por cento).
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
10. Clique no boto Localizar prximo. O primeiro registro que atende aos
critrios digitados ser exibido, conforme indicado na Figura 1.43.
10. Voc pode utilizar o boto Excluir para eliminar a linha do registro
que est sendo exibido.
11. Cada vez que tiver que utilizar um novo conjunto de critrios, basta
clicar no boto Critrios.
Veremos que existem diferenas fundamentais entre estes dois operadores e que
muito importante entendermos estas diferenas para que possamos obter os
resultados desejados quando estamos definindo critrios de pesquisa em uma lista
de valores no Excel. Os conceitos vistos nesta lio tambm so vlidos para o
uso destes operadores em consultas do Access ou em qualquer outro programa onde
possam ser utilizados os operadores E e OU, como por exemplo em mecanismos de
pesquisa na Internet, como por exemplo o Google (www.google.com) o Yahoo
(www.yahoo.com) e o Alta Vista (www.altavista.com.br).
Entendendo o operador E:
Observe que todos estes registros atendem aos trs critrios de pesquisa. J os
registros da listagem a seguir no seriam selecionados, pois no atendem a um ou
mais dos critrios de pesquisa:
*******************************************************************
*******************************************************************
Neste caso ser selecionado qualquer registro que atender, pelo menos, um dos
critrios unidos pelo operador OU. Somente deixaro de ser selecionados os
registros que no atenderem a nenhum dos critrios especificados.
*******************************************************************
*******************************************************************
*******************************************************************
*******************************************************************
Resumindo:
Critrios unidos por um operador E -> Todos tem que ser verdadeiros para que o
registro seja selecionado. Basta que um seja falso para que o registro no seja
selecionado.
Critrios unidos por um operador OU -> Basta que um seja verdadeiro para que o
registro seja selecionado. Somente quando todos forem falsos que o registro no
ser selecionado.
Por exemplo, podemos definir um critrio de filtragem onde sejam exibidos apenas
os pedidos para o Brasil, Alemanha, Argentina, EUA e Frana. Observe
que neste caso temos que definir cinco valores diferentes, como critrios de
filtragem, no campo Pas. Este tipo de filtro no possvel de ser definido com
a opo AutoFiltro.
Outra exemplo, poderamos definir mltiplos critrios em dois ou mais campos. Por
exemplo, podemos filtrar apenas os pedidos para o Brasil, para o ano de 1997;
mais todos os pedidos para a Argentina com frete maior do que R$ 20,00 e todos os
pedidos para a Frana onde a cidade Paris e o ano 1998. Este tipo de
filtragem, com diferentes critrios em diferentes campos, sendo aplicados
simultaneamente, no possvel de ser aplicado, usando a opo AutoFiltro.
Com o comando Filtro Avanado possvel fazer com que o Excel faa uma cpia das
linhas filtradas para outro local da planilha ou para outra planilha. Esta opo
muito til quando voc quer, alm de filtrar os dados, obter uma cpia dos
dados filtrados para efetuar anlises, clculos ou consolidaes.
Para trabalhar com o comando Filtro Avanado temos que definir uma faixa de
clulas onde so definidos os critrios de filtragem. Ao usar o comando Filtro
Avanado devemos informar a faixa onde esto os critrios a serem utilizados. Na
Figura 1.44:
Como os critrios esto ligados pelo operador OU (cada linha separada ligada
por um OU), os critrios so independentes. Ou seja, sero selecionados os
registros que atendam os critrios da primeira linha OU os critrios da segunda
linha, ou seja, basta atender a um dos critrios (uma das linhas) para ser
selecionado. Os critrios dentro da mesma linha so ligados por um E, como o
exemplo da segunda linha. No basta ser Pas=Argentina, tem que tambm atender ao
critrio do frete e vice-versa.
A faixa com os critrios pode ser criada acima ou abaixo da lista. Com a lista
pode crescer com o tempo, recomendado que voc crie a sua faixa de critrios
nas linhas acima da lista.
Para criar a faixa de critrios voc deve definir o rtulo das colunas da faixa
de critrio, exatamente iguais aos rtulos das colunas da lista. Por exemplo, se
voc deseja definir uma coluna na faixa de critrios, para definir valores de
filtragem para o campo Pas, o rtulo desta coluna deve ser exatamente igual ao
rtulo do campo Pas na lista. Observe que o Excel no faz diferena entre
maisculas e minsculas, porm faz diferena entre acentos, o cedilha e o til.
A seguir apresento mais alguns exemplos de critrios avanados que podem ser
definidos com o uso de faixas de critrios e com o comando Filtro Avanado. Os
exemplos so obtidos a partir do Help do Excel.
Vrias condies em uma s coluna: Se voc tem duas ou mais condies para uma
nica coluna, digite o critrio diretamente abaixo de cada um em linhas
separadas. Por exemplo, o intervalo de critrios a seguir exibe as linhas que
Uma condio em duas ou mais colunas: Para localizar dados que atendam a uma
condio em duas ou mais colunas, insira todos os critrios na mesma linha do
intervalo de critrios. Por exemplo, o intervalo de critrios a seguir exibe
todas as linhas que contm "Produo" na coluna Tipo, "Amaral" na coluna Vendedor
e valores de vendas acima de R$1.000.
Uma condio em uma coluna ou outra: Para localizar os dados que atendam a uma
condio em uma coluna ou uma condio em outra coluna, insira os critrios em
linhas diferentes do intervalo de critrios. Por exemplo, o intervalo de
critrios a seguir exibe todas as linhas que contm "Produo" na coluna Tipo,
"Amaral" na coluna Vendedor ou valores de vendas acima de R$1.000.
Um de dois conjuntos de condies para duas colunas: Para localizar linhas que
atendam a um de dois conjuntos de condies, onde cada grupo inclui condies
para mais de uma coluna, digite os critrios em linhas separadas. Por exemplo, o
intervalo de critrios a seguir exibe as linhas que contm tanto "Amaral" na
coluna Vendedor e valores de vendas acima de R$3.000, como tambm exibe as linhas
do vendedor Bonfim com vendas acima de R$1.500.
Condies criadas como resultado de uma frmula: Voc pode usar um valor
calculado que seja resultado de uma frmula como critrio. Quando voc usa uma
frmula para criar um critrio, no use um rtulo de coluna como rtulo de
critrios; deixe o rtulo de critrios em branco ou use um rtulo que no seja um
rtulo de coluna na lista. Por exemplo, o intervalo de critrios a seguir exibe
linhas que tm um valor na coluna G maior do que a mdia das clulas E5: E14; ele
no usa um rtulo de critrios.
Observaes:
A frmula utilizada para uma condio deve usar uma referncia relativa
para se referir ao rtulo da coluna (por exemplo, Vendas) ou o campo
correspondente no primeiro registro. Todas as outras referncias na frmula
devem ser referncias absolutas, e a frmula deve avaliar se so
VERDADEIRAS ou FALSAS. No exemplo da frmula, "G5" se refere ao campo
(coluna G) do primeiro registro (linha 5) da lista.
*****************************************
Pas= Brasil Ou Argentina ou Frana
Frete > 30
*****************************************
*****************************************
Pas=Brasil Ou Alemanha
Ano= 1997
Ou
Pas=Frana Ou EUA
Ano=1196
*****************************************
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
*****************************************
Frete > 30
*****************************************
11. Observe que o critrio >30 foi repetido nas trs linhas. Se no repetssemos o
critrios nas trs linhas, ele seria aplicado apenas na primeira linha. Com isso seriam
filtrados os pedidos para o Brasil, com valores de frete maiores do que 30 e todos os
pedidos para a Argentina e para a Frana, independentemente do valor do frete.
12. Agora vamos usar o comando Filtro Avanado para filtra os dados da lista de acordo
com os critrios definidos na faixa de critrios.
15. Nesta janela devemos informar o intervalo no qual encontra-se a lista de dados e o
intervalo onde esto definidos os critrios. Podemos informar o intervalo digitando
diretamente nos campos ou clicar no boto vermelho, ao lado do campo para voltar a planilha
e marcar a faixa com o mouse. Para maiores detalhes sobre intervalos e seleo de
intervalos, consulte o curso de Excel Bsico em 120 Lies, no seguinte endereo:
http://www.juliobattisti.com.br/
19. Observe que estamos utilizando a nomenclatura completa para os endereos da faixa.
Onde includo o nome da planilha, antes dos endereos absolutos das clulas.
20. Clique em OK e pronto, a lista ser filtrada, de acordo com os critrios definidos
na faixa de critrios, conforme indicado na Figura 1.48:
21. Agora vamos alterar a faixa de critrios, para que sejam aplicados os seguintes
critrios:
*****************************************
Pas=Brasil Ou Alemanha
Ano= 1997
Ou
Pas=Frana Ou EUA
Ano=1196
*****************************************
22. Selecione o comando Dados -> Filtrar -> Mostrar todos, para limpar os filtros
anteriores. Exclua a faixa de critrios criada anteriormente. Digite a faixa de critrios
conforme indicado na Figura 1.49:
23. Observe que estamos definindo em cada linha, dois critrios. Por exemplo, na linha
2 definimos o filtro para Brasil e a faixa das datas dentro do ano de 1997. Como o excel
armazena as datas como nmeros (conforme descrito no curso bsico de Excel em 120 lies
www.juliobattisti.com.br) possvel fazer comparaes do tipo >= e <= com colunas do
tipo data.
Regra 1: Se definirmos uma nica letra, por exemplo, no campo Pas, sero
selecionados todos os registros em que o pas iniciar pela letra especificada.
Por exemplo, se definirmos o critrio A para o campo pas, sero selecionados os
registros para Alemanha, Argentina e assim por diante. No sero selecionados os
registros para a ustria, pois o Excel diferencia com acento e sem acento.
Regra 2: Podemos utilizar os operadores maior do que (>), maior ou igual a (>=),
menor do que (<), menor ou igual a (<=) e diferente (<>). Por exemplo, se, no
campo pas, definirmos o seguinte critrio: >=L, sero filtradas todas as linhas
onde o nome do pas inicie com L ou com todas as demais letras aps o L. Assim
seriam selecionadas linhas para ndia, Peru, Venezuela, Zaire, etc.
Regra 3: Se voc especificar uma palavra como critrio, o Excel retornar todas
as linhas onde o campo que est sendo filtrado, contenha a palavra digitada. Por
exemplo, se em um campo Nome do Cliente, voc especificar o critrio Silva, sero
retornados os seguintes valores: Jos da Silva, Silvania da Costa, Silvano
Pereira, Silvamar Rocha, Carlos Silva, etc.
Regra 4: Se voc deseja uma ocorrncia exata, deve colocar o texto a ser
pesquisado dentro de uma frmula, no seguinte formato: ==texto a ser
pesquisado. Por exemplo, se em um campo Nome do Cliente, voc especificar o
critrio ==Silva, sero retornados os seguintes valores: Jos da Silva, Carlos
Silva, etc; mas no sero retornados os seguintes valores: Silvania da Costa,
Silvano Pereira, Silvamar Rocha e assim por diante.
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
10. Selecione o comando Dados -> Filtrar -> Mostrar todos. Agora altere a
faixa de critrios, conforme indicado na Figura 1.53.
Figura 1.53 Filtrando pases em que a primeira letra do nome inicia na faixa
de M at Z.
11. Selecione o comando Dados -> Filtrar -> Filtro avanado e defina as
faixas conforme indicado na Figura 1.52.
12. Clique em OK. Observe que sero exibidos apenas os pedidos em que a
13. Selecione o comando Dados -> Filtrar -> Mostrar todos. Agora altere a
faixa de critrios, conforme indicado na Figura 1.54.
Figura 1.54 Filtrando apenas os pases que comeam e terminam com a letra A.
14. Selecione o comando Dados -> Filtrar -> Filtro avanado e defina as
faixas conforme indicado na Figura 1.52.
15. Clique em OK. Observe que sero exibidos apenas os pedidos em que a
primeira e a ltima letra do nome do Pas a letra A, como por exemplo Alemanha
e Argentina, conforme indicado na Figura 1.55:
Figura 1.55 Filtrando apenas os pases que comeam e terminam com a letra A.
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
8. O valor da mdia calculada ser usado como critrio (na verdade uma
referncia absoluta a clula onde est o valor da mdia) para filtrar apenas os
pedidos com valores acima da mdia.
11. Na Figura 1.56 temos uma viso geral da definio do clculo da mdia e
do critrio calculado.
12. Selecione o comando Dados -> Filtrar -> Filtro avanado e defina as
faixas conforme indicado na Figura 1.57.
13. Clique em OK. Observe que sero exibidos apenas os pedidos com valores
acima da mdia, que de R$ 1525, 05 conforme indicado na Figura 1.58.
14. Agora vamos alterar os critrios para filtrar apenas os pedidos onde a
diferena, em dias, entre a Data de Envio e a Data do Pedido for maior do que 15.
19. Selecione o comando Dados -> Filtrar -> Filtro avanado e defina as
faixas conforme indicado na Figura 1.59.
20. Clique em OK. Observe que sero exibidos apenas os pedidos onde a
diferena entre a Data de Envio e a Data do Pedido for maior do que 15 dias,
conforme indicado na Figura 1.60:
Figura 1.60 Somente pedidos com diferena entre as datas maior do que 15 dias.
Nesta lio veremos um exemplo bsico do uso de subtotais. Mais adiante, nos
mdulos 3 e 4 voltaremos ao assunto de subtotais, quando falaremos das
ferramentas de anlise e simulao do Microsoft Excel.
Nesta lio veremos um exemplo simples de como criar subtotais por vendedor.
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
12. Na lista A cada alterao em, selecionamos o campo no qual queremos que
os subtotais sejam calculados. No nosso exemplo selecione o campo Funcionrio.
valores onde sero efetuados os clculos. No nosso caso queremos somar o total de
vendas para cada funcionrio. Selecione a coluna Valor.
Nota: Para copiar um arquivo compactado (.zip) com todas as planilhas de exemplo
deste curso, clique no endereo a seguir:
Resumo
Concluso: No Mdulo 1 aprendemos a importar e a exportar dados para o Excel
Tambm aprendemos classificar planilhas. Na seqncia vimos como filtrar os
registros de uma lista. Finalizamos o Mdulo aprendendo sobre Filtros Avanados e
subtotais.
Bibliografia recomendada:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
CONT.SE( )
SOMASE( )
BDMDIA( )
BDCONTAR( )
BDCONTARA( )
BDEXTRAIR( )
BDMX( )
BDMN( )
BDMULTIPL( )
BDEST( )
BDDESVPA( )
BDSOMA( )
BDVAREST( )
BDVARP( )
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos, j
classificada por pas e, dentro do pas, por Cidade.
9. Clique em OK.
10. Observe que sero calculados os totais gerais por Pas de destino.
Observe tambm que, no canto inferior esquerdo, ao lado da coluna A, foram
disponibilizados os botes para expandira ou ocultar nveis de detalhes. Por
exemplo, se voc clicar no boto 2 ser exibido apenas o nome do Pas (sem a
lista de pedidos do pas) e o total geral para o pas, conforme indicado na
Figura 2.2.
os totais gerais.
16. Para que os subtotais por Pas de destino sejam mantidos voc deve
desmarcar a opo Substituir subtotais atuais. Se esta opo estiver marcada,
os subtotais por Pas de destino sero excludos e sero mantidos apenas os
subtotais por Cidade. Voc pode introduzir uma seqncia de subtotais usando esta
estratgia. Primeiro o subtotal maior, no nosso exemplo por Pas de destino. Em
seguida os subtotais menores, no nosso exemplo por Cidade. Poderamos avanar
mais nveis, por exemplo, fazendo subtotais por dia, dentro da mesma cidade. O
importante , a cada etapa, desmarcar a opo Substituir subtotais atuais..
Figura 2.3 Para manter os subtotais por Pas, desmarque a opo Substituir
subtotais atuais.
19. Por padro so exibidos todos os pedidos, com o subtotal para cada
cidade e o subtotal para cada pas. Se voc clicar no boto 3 sero exibidos
somente os subtotais por cidade e por pas, conforme indicado na Figura 2.4:
20. Clique no boto 2. Observe que sero exibidos apenas os totais por
pas de destino.
23. Voc tambm pode ocultar os pedidos apenas para uma cidade ou pas
especfico. Para isso basta clicar no sinal de menos (-) ao lado do nome da
cidade e/ou pas.
26. Ao invs da soma por cidade, poderamos obter o valor mdio dos pedidos
ou o valor mximo. Para isso bastaria selecionar a funo desejada. Por exemplo,
para obter o valor mdio dos pedidos por cidade, na lista usar funo, da Figura
2.3, bastaria selecionar Mdia.
27. Podemos, facilmente, alterar a funo que est sendo utilizada para um
subtotal. Basta clicar em uma das clulas onde est sendo calculado o subtotal
que queremos alterar, depois selecionar o comando Dados -> Subtotais e alterar a
funo de clculo.
28. Vamos alterar o nosso exemplo para que sejam calculadas tambm as
mdias dos pedidos por cidade, alm da Soma j calculada anteriormente.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Lio 03: Funes para anlise dos dados de uma lista Parte 1
A partir desta lio, at a Lio 6 estudaremos uma srie de funes utilizadas
para analisar dados em uma lista do Excel. Por exemplo, podemos usar a funo
CONT.SE para detectar quantas clulas no vazias, dentro de uma faixa de clulas,
atendem a um determinado critrio. A funo CONT.SE retorna um nmero o qual
indica quantas clulas contm um valor que corresponde ao critrio especificado.
Podemos usar a funo SOMASE para efetuar uma soma condicional, onde os valores
de uma coluna so ou no acrescentados a soma, com base nos valores de uma outra
coluna. Por exemplo, poderamos efetuar uma soma condicional para obter o total
de vendas apenas para o ms de Outubro ou somente as vendas feitas para um
determinado cliente e assim por diante.
CONT.SE( )
SOMASE( )
BDMDIA( )
A funo CONT.SE:
CONT.SE(intervalo;critrios)
CONT.SE(A1:A10;"CONTAB") ir retornar 4
CONT.SE(A1:A10;"ADM") ir retornar 4
CONT.SE(A1:A10;"FINAN") ir retornar 2
CONT.SE(A1:A100;>200) ???
A funo SOMASE:
A funo SOMASE faz uma soma condicional. Por exemplo, podemos usar a funo
SOMASE para obter a soma de todos os pedidos para um determinado funcionrio.
Temos que fornecer trs parmetros para a funo SOMASE, conforme descrito a
seguir:
Sintaxe:
=SOMASE(A1:A100;Jos da Silva;B1:B100)
Suponha que A1:A4 contm os seguintes valores de propriedade para quatro casas:
R$ 100.000, R$ 200.000, R$ 300.000, R$ 400.000, respectivamente. B1:B4 conter as
seguintes comisses de vendas em cada um dos valores de propriedade
correspondentes: R$ 7.000, R$ 14.000, R$ 21.000, R$ 28.000.
A funo BDMDIA:
A funo BDMDIA utilizada para calcular a mdia dos valores em uma coluna de
uma lista ou banco de dados que coincidirem com as condies especificadas por
voc. Ou seja, usamos a funo BDMDIA para calcular a mdia dos valores de uma
coluna, valores estes que coincidem com um critrio especificado.
Sintaxe:
BDMDIA(banco_dados;campo;critrios)
Campo: indica a coluna que ser usada na funo. O campo pode ser dado como
texto com o rtulo da coluna entre aspas, como "Pas" ou "Cidade", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
Sintaxe: BDfuno(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. As colunas de dados na lista
devem ter um rtulo de identificao na primeira linha. O campo pode ser dado
como texto com o rtulo de coluna entre aspas, como "Idade" ou "Rendimento" no
exemplo de lista apresentado abaixo, ou como um nmero que represente a posio
da coluna na lista: 1 para a primeira coluna (rvore, no exemplo da Figura 2.8),
2 para a segunda (Altura) e assim por diante.
Dicas:
Voc pode usar qualquer intervalo para o argumento de critrios, desde que ele
inclua pelo menos um rtulo de coluna e ao menos uma clula abaixo do rtulo de
coluna para especificar a condio.
Para efetuar uma operao em uma coluna inteira em um banco de dados, insira uma
linha em branco abaixo dos rtulos de coluna no intervalo de critrios.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Lio 04: Funes para anlise dos dados de uma lista Parte 2
Nesta lio estudaremos as seguintes funes:
BDCONTAR( )
BDCONTARA( )
BDEXTRAIR( )
Nota: Para os exemplos desta lio vamos considerar os dados da Figura 2.9:
A funo BDCONTAR:
A funo BDCONTAR utilizada para contar as clulas contendo nmeros em uma
coluna de uma lista ou banco de dados que coincidirem com as condies
especificadas por voc. Ou seja, permite uma contagem condicional, contando
apenas as clulas que atendem ao critrio especificado.
Sintaxe:
BDCONTAR(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDCONTARA:
Esta funo utilizada para contar todas as clulas no vazias em uma coluna de
uma lista ou banco de dados que coincidirem com as condies especificadas por
voc.
Sintaxe:
BDCONTARA(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante. Se voc omitir o campo,
BDCONTARA retornar uma contagem de todos os registros que atendam aos critrios.
Se voc incluir o campo, BDCONTARA retornar apenas os registros que contiverem o
valor contido no campo e atendam aos critrios.
A funo BDEXTRAIR:
Esta funo utilizada para extrair um nico valor em uma coluna de uma lista ou
banco de dados que coincidir com as condies especificadas por voc.
Sintaxe:
BDEXTRAIR (banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
Observaes:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Lio 05: Funes para anlise dos dados de uma lista Parte 3
Nesta lio estudaremos as seguintes funes:
BDMX( )
BDMN( )
BDMULTIPL( )
BDEST( )
Nota: Para os exemplos desta lio vamos considerar os dados da Figura 2.10:
A funo BDMX:
Esta funo utilizada para retornar o maior nmero em uma coluna de uma lista
ou banco de dados que coincidir com as condies especificadas por voc.
Sintaxe:
BDMX(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDMN:
Esta funo utilizada para retornar o menor nmero em uma coluna de uma lista
ou banco de dados que coincidir com as condies especificadas por voc.
Sintaxe:
BDMN(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDMULTIPL:
Esta funo utilizada para multiplicar os valores em uma coluna de uma lista ou
banco de dados que coincidirem com as condies especificadas por voc.
Sintaxe:
BDMULTIPL(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDEST:
Esta funo utilizada para estimar o desvio padro de uma populao com base em
uma amostra, usando os nmeros em uma coluna de uma lista ou banco de dados que
coincidirem com as condies especificadas por voc.
Sintaxe:
BDEST(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Lio 06: Funes para anlise dos dados de uma lista Parte 4
Nesta lio estudaremos as seguintes funes:
BDDESVPA( )
BDSOMA( )
BDVAREST( )
BDVARP( )
Nota: Para os exemplos desta lio vamos considerar os dados da Figura 2.11:
A funo BDDESVPA:
Esta funo utilizada para calcular o desvio padro de uma populao com base
na populao inteira, usando os nmeros em uma coluna de uma lista ou banco de
dados que coincidirem com as condies especificadas por voc.
Sintaxe:
BDDESVPA(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDSOMA:
Esta funo utilizada para somar os nmeros em uma coluna de uma lista ou banco
de dados que coincidirem com as condies especificadas por voc.
Sintaxe: BDSOMA(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
A funo BDVAREST:
Esta funo utilizada para estimar a varincia de uma populao com base em uma
amostra, usando os nmeros em uma coluna de uma lista ou banco de dados que
coincidirem com as condies especificadas por voc.
Sintaxe:
BDVAREST(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
pelo menos um rtulo de coluna e ao menos uma clula abaixo do rtulo de coluna
para especificar uma condio para a coluna.
A funo BDVARP:
Esta funo utilizada para calcular a varincia de uma populao com base na
populao inteira, usando os nmeros em uma coluna de uma lista ou banco de dados
que coincidirem com as condies especificadas por voc.
Sintaxe:
BDVARP(banco_dados;campo;critrios)
Campo: Indica a coluna que ser usada na funo. O campo pode ser dado como texto
com o rtulo da coluna entre aspas, como "Idade" ou "Rendimento", ou como um
nmero que represente a posio da coluna dentro da lista: 1 para a primeira
coluna, 2 para a segunda coluna e assim por diante.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Alm dos valores aceitos podemos definir o tipo de dados aceitos. Por exemplo,
podemos definir que os valores em uma faixa de clulas devem ser,
obrigatoriamente numricos. Neste caso, se o usurio digitar um texto, o Excel
no aceita a entrada e emite uma mensagem de erro.
Ao definirmos uma lista de valores que sero aceitos, como no exemplo da lista de
cidades do primeiro pargrafo, o Excel cria uma Caixa de combinao, na qual
podemos selecionar um valor da lista, sem que seja necessria a digitao do
valor desejado. Esta funcionalidade facilita bastante a digitao, alm de evitar
que sejam aceitos valores que no esto na lista.
1. Abra o Excel.
5. Clique em Abrir.
de entradas.
17. Tente digitar um valor que no est na lista, por exemplo Campinas. Ao
tentar sair da Clula, o Excel emite a mensagem de erro indicada na Figura 2.15,
informando que o valor digitado no vlido. Ou seja, o Excel somente aceita os
Figura 2.15 Mensagem de erro que surge quando voc digita uma valor que no
est na lista.
19. Agora vamos definir o critrio para que a coluna Total de Arrecadao
no aceita valores maiores do que 1.000.000. Na Clula F4 digite o valor 1000000.
Usaremos este valor para definir o critrio para a coluna Total de Arrecadao.
24. V para a clula B4 e digite 500000. Observe que o Excel aceita sem
problemas, pois est dentro da faixa permitida, ou seja, abaixo de 1000000. V
para a clula B5 e digite 2000000. Observe que o Excel no aceita, emitindo uma
mensagem de erro. Com isso podemos conferir que o nosso critrio de validao
est funcionando.
25. Agora vamos definir o critrio para que a coluna Data de Arrecadao
somente aceita valores para o ano de 2002. Na Clula G4 digite 01/01/2002. Na
Clula G5 digite 31/12/2002.
30. V para a clula C4 e digite 05/02/2002. Observe que o Excel aceita sem
problemas, pois est dentro da faixa permitida. V para a clula C5 e digite
20/02/2003. Observe que o Excel no aceita, emitindo uma mensagem de erro. Com
isso podemos conferir que o nosso critrio de validao est funcionando.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Viso geral:
Para analisar os dados de uma pgina da Web, voc pode usar uma consulta Web
para recuperar uma tabela, vrias tabelas ou todo o texto de uma pgina da Web.
Aps recuperar os dados, voc poder analis-los usando as ferramentas e recursos
do Microsoft Excel. Embora os dados sejam externos, voc pode trabalhar com eles
como se tivessem sido digitados diretamente na planilha. Use uma consulta Web
se voc desejar obter dados da Web para utilizar no Excel para recuperar e
analisar cotaes da bolsa de valores, por exemplo.
Na Figura 2.18 temos um exemplo de uma planilha onde temos texto digitado
diretamente pelo usurio em combinao com uma tabela de dados, dados estes
recuperados a partir de uma pgina da Internet.
Uma consulta Web pode recuperar dados de uma pgina da Web e coloc-los no
Excel para anlise. Alguns requisitos so necessrios para que voc possa acessar
dados a partir de uma pgina da Internet:
Instale um navegador Browser: Para que possa recuperar dados de uma pgina da
Web, ser necessrio que voc tenha um navegador da Web instalado por exemplo,
o Microsoft Internet Explorer, includo com o Microsoft Office. Para obter dados
de um site na World Wide Web, voc precisa ter acesso Internet atravs da
intranet da Empresa ou atravs de um modem e uma conta junto a um provedor de
acesso Internet.
Execute ou crie uma consulta Web: Se voc tiver um arquivo de consulta Web
.iqy referente aos dados desejados, poder executar a consulta Web para
recuperar os dados. Voc poder usar os exemplos de consulta Web fornecidos com
o Excel ou poder criar uma nova consulta Web. Nesta lio veremos como abrir
uma das consultas j existentes com o Excel e na prxima lio, veremos como
criar uma nova consulta.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
http://www.portalbrasil.eti.br/poupanca_2002.htm
Este site traz uma srie de indicadores, tais como o ndice de Poupana, Dlar,
INPC, IPC, etc. Faremos uma consulta baseada no endereo acima. Esta consulta
retornar os ndices de Poupana para 2002. Em seguida iremos configurar o
intervalo de atualizao destes dados.
1. Abra o Excel.
2. Para criar uma nova consulta selecione o comando Dados -> Obter dados
externos -> Nova consulta Web...
A opo Salvar consulta...: Salva uma consulta da Web em um arquivo .iqy para que
voc possa recuperar os mesmos dados em outras pastas de trabalho ou compartilhar
a consulta com outros usurios. Se voc no salvar um arquivo de consulta da Web,
a consulta ser salva como parte de sua pasta de trabalho do Microsoft Excel e
voc poder execut-la apenas nessa pasta de trabalho.
10. Para executar a consulta clique no boto OK. O Excel abre a janela
solicitando que voc informe a faixa da planilha onde os dados da consulta devem
ser exibidos. Por padro o Excel sugere a partir da clula A1. Clique em OK. O
Excel faz a consulta e dentro de alguns instantes os dados sero exibidos na
planilha, conforme indicado na Figura 2.23:
Esta barra chamada: Dados Externos. Para exibir a barra de ferramentas Dados
Externos selecione o comando: Exibir -> Barras de ferramentas -> Dados externos.
Ser exibida a barra indicada na Figura 2.24:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nota: O Microsoft Query pode ou no ter sido instalado quando o Office foi
instalado. Caso ele no tenha sido instalado, voc pode utilizar os seguintes
passos para instalar o Microsoft Query a partir do CD-ROM de instalao do
Microsoft Office:
O Microsoft Query um programa que traz dados de fontes externas para outros
programas do Microsoft Office principalmente para o Microsoft Excel. Se voc
usar o Query para recuperar dados de arquivos e bancos de dados corporativos, no
Tipos de bancos de dados que podem ser acessados: Voc pode recuperar dados de
vrios tipos de bancos de dados, inclusive do Microsoft Access, Microsoft SQL
Server e do Microsoft SQL Server OLAP Services. Tambm possvel recuperar dados
de listas do Excel e de arquivos de texto. Veja, a seguir, uma lista de tipos de
bancos de dados que podem ser acessados com o Microsoft Query:
O Microsoft Office fornece drivers que podem ser usados para recuperar dados das
seguintes fontes de dados:
No Excel, voc tambm pode recuperar dados de pginas da Web, mas no precisa do
Query para fazer isso. Para obter informaes sobre como recuperar dados de
pginas da Web, consulte a Lio 8 e a Lio 9.
Na Figura 2.27 temos um exemplo de uma consulta criada com o Microsoft Query com
base em dados de um banco de dados do Microsoft Access arquivo .mdb.
Com o Query, voc pode selecionar as colunas de dados desejadas e trazer somente
esses dados para o Excel. Observe tambm que foram feitas consolidaes dos
dados, com o total de vendas por regio.
Atualizar a planilha em uma operao: Depois que voc tiver dados externos em
uma pasta do Excel, sempre que o banco de dados for alterado, voc poder
atualizar os dados para atualizar a anlise sem que seja preciso recriar os
relatrios de resumo e grficos. Por exemplo, possvel criar um resumo de
vendas mensal e atualiz-lo todos os meses quando novas estimativas de vendas
surgirem. Tambm possvel configurar um intervalo para que as atualizaes
ocorram automaticamente, conforme explicado na Lio 9.
Usar o Query para recuperar dados: So necessrias trs etapas para trazer dados
externos para o Excel com o Query:
Como o Query usa fontes de dados? Depois que voc configurar uma fonte de dados
para um determinado banco de dados, poder us-la sempre que desejar criar uma
consulta para selecionar e recuperar dados desse banco de dados sem precisar
digitar novamente todas as informaes sobre a conexo. O Query usa a fonte de
dados para conectar-se ao banco de dados externo e mostra os dados disponveis.
Aps criar a consulta e retornar dados ao Excel, o Query recupera os dados e
fornece pasta de trabalho do Excel informaes sobre a consulta e a fonte de
dados para que voc se reconecte ao banco de dados quando desejar atualizar os
dados.
2) Definir a consulta:
Aps ter configurado a fonte de dados, o prximo passo criar a consulta. Na
consulta voc especifica quais dados sero retornados. Podemos criar consultas
que retornam campos de uma ou mais tabelas, podemos especificar critrios de
filtragem, de ordenao e de agrupamento.
Para criar consultas vamos usar o Assistente de consulta para a maioria das
consultas O Assistente de consulta, que faz parte do Microsoft Query,
destinado a usurios inexperientes na criao de consultas. O assistente facilita
a seleo e a importao de dados de diferentes tabelas e campos para o seu banco
de dados. Depois que selecionar os dados, voc tambm pode usar o assistente para
filtrar e classificar os resultados da consulta. possvel usar o Assistente de
consulta para criar uma consulta completa ou iniciar uma consulta que ser
alterada diretamente no Query.
Use o Query diretamente quando desejar criar consultas que faam o seguinte:
talvez voc deseje escolher alguns dos dados em um campo e omitir os dados
desnecessrios. Por exemplo, se precisar de dados para dois dos produtos em um
campo que possui informaes para muitos produtos, poder usar critrios para
selecionar dados para somente dois produtos desejados. Aprenda sobre como usar
critrios.
Recuperar dados com base em diferentes critrios cada vez que uma consulta for
executada: Se voc precisa criar o mesmo relatrio ou resumo do Excel para
diversas reas nos mesmos dados externos como um relatrio de vendas separado
para cada regio poder criar um tipo de consulta chamado consulta de
parmetros. Ao executar uma consulta de parmetros, voc solicitado a fornecer
os dados a serem usados como critrio quando a consulta selecionar os registros.
Por exemplo, uma consulta de parmetros pode solicitar que voc digite uma regio
especfica e possvel usar essa consulta novamente para criar cada um dos
relatrios de vendas regionais. Aprenda sobre consultas de parmetros no curso de
Access Bsico: (http://www.juliobattisti.com.br/accbasico/accessbasico.asp).
Combinar dados de diferentes formas: Voc pode usar o Query para combinar ou
relacionar os dados de diferentes tabelas no seu banco de dados. Por exemplo, se
tiver uma tabela de informaes sobre vendas de produtos e uma tabela com
informaes sobre os clientes, poder relacionar essas tabelas de modo a mostrar
os clientes que no fizeram compras recentemente. Aprenda sobre como relacionar
tabelas no curso de Access Bsico:
(http://www.juliobattisti.com.br/accbasico/accessbasico.asp).
Formatar e analisar os dados: No Excel, voc pode usar ferramentas com as quais
est familiarizado, como Assistente de grfico ou subtotais automticos, para
apresentar e resumir os dados. possvel formatar os dados, e sua formatao
ser mantida quando os dados externos forem atualizados a partir do banco de
dados de origem. Se colunas de frmulas forem adicionadas ao intervalo de dados
externos, as frmulas podero ser copiadas automaticamente para quaisquer linhas
novas adicionadas ao intervalo quando voc atualizar os dados. Voc pode usar
seus prprios rtulos de coluna em vez de nomes de campo e adicionar os nmeros
de linha automaticamente. Para obter informaes sobre como controlar a
formatao e o layout de um intervalo de dados consulte o curso de Excel Bsico,
no seguinte endereo:
http://www.juliobattisti.com.br/excel120/excel120.asp
Excel enquanto os dados esto sendo atualizados e tambm pode verificar o status
enquanto os dados esto sendo atualizados.
Bem, chega de teoria. Nas prximas lies aprenderemos a usar o Microsoft Query
para criar uma srie de consultas baseadas em dados de fontes externas.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exerccio 18 Abrir o Excel e definir uma fonte de dados para acessar os dados do
arquivo C:\ExcelAvanado\ExQuery.mdb.
1. Abra o Excel.
2. Para definir a fonte de dados selecione o comando Dados -> Obter dados
externos -> Criar nova consulta ao banco de dados...
5. Clique em OK.
8. Clique em OK.
10. Mantenha esta janela aberta, pois iremos utiliza-la na prxima lio,
onde aprenderemos a criar uma consulta simples, utilizando o Microsoft Query.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nas prximas lies aprenderemos outras maneiras de criar uma fonte de dados e
tambm a criar consultas mais elaboradas. Nesta Lio, utilizaremos o Assistente
de consultas, indicado na Figura 2.31. Em outros exemplos deste mdulo tambm
aprenderemos a utilizar diretamente o Microsoft Query, sem o assistente de
consultas, para criar consultas mais elaboradas.
Exerccio 19 Utilizar a fonte de dados criada na Lio 11 para criar uma consulta
onde seja exibida uma listagem dos pedidos, classificada pelo nmero do pedido,
com as seguintes informaes:
4. Voc tambm pode adicionar todos os campos de uma tabela de uma nica
vez, ao invs de ter que adicionar um por um. Para isso clique no nome da tabela
para seleciona-la e depois clique no boto >. Com isso todos os campos da tabela
selecionada sero adicionados consulta.
11. Clique no boto Avanar para seguir para a prxima etapa do assistente.
12. Nesta etapa voc pode selecionar at trs campos para classificar os
resultados da consulta. No nosso exemplo vamos classificar pelo campo Nmero do
Pedido, conforme indicado na Figura 2.36.
13. Clique no boto Avanar para seguir para etapa final do assistente.
14. Nesta etapa tambm podemos Salvar a consulta. A consulta salva como
um arquivo .dqy. Ao salvar a consulta voc poder utiliza-la novamente. Um
arquivo .dqy, com as definies da consulta pode ser aberto diretamente no Excel.
Ao abrir o arquivo .dqy, a fonte de dados ser conectada e os dados, de acordo
com as definies da consulta, sero retornados.
15. Clique no boto Concluir. O Excel abre a janela solicitando que voc
informe a faixa da planilha onde os dados da consulta devem ser exibidos. Por
padro o Excel sugere a partir da clula A1. Clique em OK. O Excel executa a
consulta e dentro de alguns instantes os dados sero exibidos na planilha,
conforme indicado na Figura 2.38:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
possvel definir critrios para dois ou mais campos. Por exemplo, Pas =
Brasil e Cidade=So Paulo. Com isso sero retornados apenas os registros que
atenderem aos dois critrios ao mesmo tempo. Tambm podemos definir critrios
independentes. Por exemplo, Pas=Brasil Ou Cidade=Paris. Neste exemplo iremos
retornar todos os registros para o Brasil, independentemente da cidade e todos os
registros da Cidade de Paris. Observe que so dois conjuntos independentes de
registros. No texto a seguir coloco mais alguns exemplos que destacam com clareza
a diferena entre critrios ligados pelo operador E e critrios ligados pelo
operador OU.
Veremos que existem diferenas fundamentais entre estes dois operadores e que
muito importante entendermos estas diferenas para que possamos obter os
resultados desejados quando estamos definindo critrios de pesquisa em uma lista
de valores no Excel ou em consultas do Microsoft Access ou do Microsoft Query. Os
conceitos vistos nesta lio tambm so vlidos para o uso destes operadores em
consultas do Access ou em qualquer outro programa onde possam ser utilizados os
operadores E e OU, como por exemplo em mecanismos de pesquisa na Internet,
como o Google (http://www.google.com/) o Yahoo (http://www.yahoo.com/) e o Alta
Vista (www.altavista.com.br).
Entendendo o operador E:
*******************************************************************
******************************************************************
Observe que todos estes registros atendem aos trs critrios de pesquisa. J os registros da listagem a
seguir no seriam selecionados, pois no atendem a um ou mais dos critrios de pesquisa:
*******************************************************************
*******************************************************************
Por exemplo, se forem definidos trs critrios unidos por operadores OU e um dos
critrios fosse verdadeiro, ou dois dos critrios fossem verdadeiros, ou at
mesmo se os trs critrios fossem verdadeiros, o registro seria selecionado. Um
registro somente no ser selecionado se todos os critrios unidos pelo operador
OU forem falsos para o referido registro.
Neste caso ser selecionado qualquer registro que atender, pelo menos, um dos
critrios unidos pelo operador OU. Somente deixaro de ser selecionados os
registros que no atenderem a nenhum dos critrios especificados.
*******************************************************************
*******************************************************************
*******************************************************************
*******************************************************************
Resumindo:
Critrios unidos por um operador E -> Todos tem que ser verdadeiros para que o registro seja
selecionado. Basta que um seja falso para que o registro no seja selecionado.
Critrios unidos por um operador OU -> Basta que um seja verdadeiro para que o registro seja
selecionado. Somente quando todos forem falsos que o registro no ser selecionado.
In
Between
Not
Like
O operador In
In ("Brasil";"Argentina";"Alemanha";"Frana";"ustria")
O operador Between:
testar se o campo est dentro de uma determinada faixa de valores. Por exemplo,
para testar se o valor do frete maior ou igual a 10 ou menor ou igual a 20,
podemos utilizar um dos seguintes critrios:
>=10 E <=20
Between 10 E 20
Para testar se uma data est dentro do ano de 1997 podemos utilizar um dos
seguintes critrios:
>=#01/01/1997# E <=#31/12/1997#
O operador Like:
Jos da Silva
Silva Antnio da Costa
Joo Pereira da Silva
Maria Jos da Silva
Silva Fontoura dos Santos
Com o operador Like podemos utilizar alguns caracteres conhecidos como caracteres
"coringa". Na tabela a seguir temos a lista dos caracteres coringa que podem ser
utilizados com o operador Like:
Observaes:
Os caracteres curinga devem ser utilizados com tipos de dados de texto, embora
voc possa, s vezes, utiliz-los com sucesso com outros tipos de dados, tais
como datas, se voc no alterar as propriedades das Configuraes Regionais
destes tipos de dados.
Por exemplo, para procurar um ponto de interrogao, digite [?]. Quando voc
estiver procurando um hfen e outros caracteres simultaneamente, coloque o hfen
antes ou depois de todos os outros caracteres dentro dos colchetes. (Entretanto,
se houver um ponto de exclamao (!) depois do colchete de abertura, coloque o
hfen depois do ponto de exclamao). Quando voc estiver procurando um ponto de
exclamao ou um colchete de fechamento, no necessrio coloc-los entre
colchetes.
O operador Not:
Considere os exemplos:
Pas=Brasil -> Retorna todos os registros onde o campo Pas igual a Brasil.
Not Pas=Brasil -> Retorna todos os pedidos onde o campo Pas diferente de
Brasil, ou seja: No Brasil
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exerccio 20 Abrir o Excel e definir uma fonte de dados para acessar os dados do
arquivo C:\ExcelAvanado\ExQuery.mdb. Aps acessar a fonte de dados usar o
Microsoft Query para acessar os seguintes campos da tabela Pedidos:
NmeroDoPedido.
DataDoPedido
CidadeDeDestino
PasDeDestino
Frete
Fazer com que sejam retornados apenas os pedidos para o Brasil, no primeiro
trimestre de 1997. Retornar os dados para o Excel e salvar a planilha com o nome
de Exemplo 20.xls, na pasta C:\ExcelAvanado.
1. Abra o Excel.
2. Para definir a fonte de dados selecione o comando Dados -> Obter dados
externos -> Criar nova consulta ao banco de dados...
5. Clique em OK.
8. Clique em OK.
NmeroDoPedido
DataDoPedido
CidadeDeDestino
PasDeDestino
Frete
14. Por padro a rea para definio dos critrios no exibida. Para
exibi-la selecione o seguinte comando: Exibir -> Critrios. Ser exibida uma rea
entre as tabelas e o painel de dados, para a definio de Critrios, conforme
indicado na Figura 2.44:
PasDeDestino=Brasil
DataDoPedido entre 01/01/1997 e 31/03/1997, ou seja, primeiro trimestre de
1997
21. Agora esto sendo exibidos apenas os pedidos que coincidem com os
critrios especificados.
22. O prximo passo fechar o Microsoft Query, retornando estes dados para
a planilha do Excel. Para fazer isso utilize o comando: Arquivo -> Retornar dados
ao Microsoft Excel.
23. O Excel abre a janela solicitando que voc informe a faixa da planilha
onde os dados da consulta devem ser exibidos. Por padro o Excel sugere a partir
da clula A1. Clique em OK. O Excel executa a consulta e dentro de alguns
26. Mantenha o Microsoft Excel aberto, pois iremos alterar esta consulta na
prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Fazer com que sejam retornados apenas os pedidos para o Brasil para o ano de 1997
e todos os pedidos para a Alemanha, Argentina ou Frana, independentemente do
ano. Retornar os dados para o Excel e salvar a planilha com o nome de Exemplo
21.xls, na pasta C:\ExcelAvanado.
2. Para alterar a consulta clique em uma das clulas que contenha dados e
selecione o seguinte comando: Dados -> Obter dados externos -> Editar consulta...
4. Para adicionar uma nova tabela selecione o comando Tabela -> Adicionar
tabelas...
Nome+ + Sobrenome
Observe que o espao deve vir entre apstrofes, conforme indicado na Figura
2.48:
11. Agora temos que definir que sejam exibidos todos os pedidos para
Alemanha, Argentina e Frana, independentemente do ano. Como so dois conjuntos
de critrios independentes, devemos coloca-los em linhas separadas, o que far
com que sejam ligados por um operador OU. Na segunda linha de critrios vamos
definir o critrio para filtrar apenas os pedidos para Alemanha, Argentina e
Frana, independentemente do ano.
Em ('Argentina';'Alemanha';'Frana')
14. O prximo passo fechar o Microsoft Query, retornando estes dados para
a planilha do Excel. Para fazer isso utilize o comando: Arquivo -> Retornar dados
ao Microsoft Excel. O Excel abre a janela solicitando que voc informe a faixa da
planilha onde os dados da consulta devem ser exibidos. Por padro o Excel sugere
a partir da clula A1. Clique em OK. O Excel executa a consulta e dentro de
alguns instantes os dados sero exibidos na planilha, conforme indicado na Figura
2.51:
17. Mantenha o Microsoft Excel aberto, pois iremos alterar esta consulta na
prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
(Quantidade*PreoUnitrio)*(1-Desconto)
Fazer com que sejam retornados apenas os pedidos para os pases onde a primeira
letra do nome do pas est na faixa da A-M. Retornar os dados para o Excel e
salvar a planilha com o nome de Exemplo 22.xls, na pasta C:\ExcelAvanado.
2. Para alterar a consulta clique em uma das clulas que contenha dados e
selecione o seguinte comando: Dados -> Obter dados externos -> Editar consulta...
4. Para adicionar uma nova tabela selecione o comando Tabela -> Adicionar
tabelas...
(Quantidade*PreoUnitrio)*(1-Desconto)
10. Agora vamos alterar os critrios. Na primeira linha temos o filtro para
Brasil e primeiro trimestre de 1997. Vamos alterar este filtro para que sejam
exibidos apenas os pedidos onde o primeiro nome do pas est na faixa de A at M.
Exclua os critrios da primeira linha de critrios. Para definir este critrio
utilizaremos o operador Like, descrito na Lio 14: Digite o seguinte critrio:
Like '[A-M]%'
Nota: Para maiores detalhes sobre o uso do operador Like (Como), consulte a Lio
14.
13. Agora temos que fazer com que o Query totalize por nota fiscal. Se voc
observar os resultados, ver que aparecem vrios registros com o mesmo nmero de
pedido. Cada registro um item do pedido. Por exemplo, o Pedido nmero 10342
apresenta dois registros, isso significa que este pedido tem dois itens. O que
queremos que sejam agrupados todos os itens de cada pedido e calculada a soma
destes itens, o que na prtica ser o total geral do pedido.
14. Para fazer este agrupamento vamos utilizar a funo Soma, na coluna
Total Geral. D um clique duplo em Total Geral (no nome da coluna). Ser exibida
a janela Editar coluna. Nesta janela, na lista Total selecione Soma, conforme
indicado na Figura 2.56:
16. O prximo passo fechar o Microsoft Query, retornando estes dados para
a planilha do Excel. Para fazer isso utilize o comando: Arquivo -> Retornar dados
ao Microsoft Excel. O Excel abre a janela solicitando que voc informe a faixa da
planilha onde os dados da consulta devem ser exibidos. Por padro o Excel sugere
a partir da clula A1. Clique em OK. O Excel executa a consulta e dentro de
alguns instantes os dados sero exibidos na planilha, conforme indicado na Figura
2.58:
17. Observe que retornada somente uma linha para cada pedido, com o total
geral do pedido e somente pedidos para os pases em que a primeira letra do nome
est na faixa de A at M.
Nota: Voc pode utilizar o comando Formatar -> Clulas para formatar os dados da
coluna G, definindo um nmero de casas decimais e a exibio ou no do smbolo da
moeda (R$). Para maiores detalhes sobre formatao de clulas no Excel, consulte
o Curso de Excel em 120 Lies, disponvel no seguinte endereo:
http://www.juliobattisti.com.br/excel120/excel120.asp.
C:\ExcelAvanado.
19. Mantenha o Microsoft Excel aberto, pois iremos alterar esta consulta na
prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
2. Para alterar a consulta clique em uma das clulas que contenha dados e
selecione o seguinte comando: Dados -> Obter dados externos -> Editar consulta...
(Quantidade*PreoUnitrio)*(1-Desconto)
2.59:
Figura 2.59 Campo Total Geral j calculado. Falta agrupar por cidade.
12. Agora temos que fazer com que o Query totalize pelo campo
CidadeDeDestino. Se voc observar os resultados, ver que aparecem vrios
registros para a mesma cidade. Cada registro um item de pedido. Por exemplo,
para a cidade Aachen, aparecem 10 registros. Estes so todos os itens de pedidos
enviados para esta cidade. O que queremos que sejam agrupados todos os itens de
cada cidade e calculada a soma destes itens, o que na prtica ser o total geral
de vendas para a cidade.
14. Para fazer este agrupamento vamos utilizar a funo Soma, na coluna
Total Geral. D um clique duplo em Total Geral (no nome da coluna). Ser exibida
a janela Editar coluna. Nesta janela, na lista Total selecione Soma, conforme
indicado na Figura 2.61:
16. Ao invs da Soma por cidade voc poderia, por exemplo, calcular o valor
mdio dos pedidos por cidade. Para isso d um clique duplo no cabealho da coluna
TotalGeral para exibir a janela com propriedades da coluna. Observe que na lista
Campo exibida a seguinte expresso: Soma((Quantidade*PreoUnitrio)*(1-
Desconto)). Basta alterar a funo Soma para Avg (Average significa mdia, em
ingls). Altere a funo para Avg e clique em OK. Ser exibida a mdia do valor
dos itens por cidade, conforme indicado na Figura 2.63:
16. O prximo passo fechar o Microsoft Query, retornando estes dados para
a planilha do Excel. Para fazer isso utilize o comando: Arquivo -> Retornar dados
ao Microsoft Excel. O Excel abre a janela solicitando que voc informe a faixa da
planilha onde os dados da consulta devem ser exibidos. Por padro o Excel sugere
a partir da clula A1. Clique em OK. O Excel executa a consulta e dentro de
alguns instantes os dados sero exibidos na planilha, conforme indicado na Figura
2.64:
17. Observe que retornada somente uma linha para cada cidade, com a mdia
dos itens por cidade. Voc pode utilizar o comando Formatar -> Clulas para
formatar os dados da coluna G, definindo um nmero de casas decimais e a exibio
ou no do smbolo da moeda (R$). Para maiores detalhes sobre formatao de
clulas no Excel, consulte o Curso de Excel em 120 Lies, disponvel no seguinte
endereo: http://www.juliobattisti.com.br/excel120/excel120.asp.
19. Mantenha o Microsoft Excel aberto, pois iremos alterar esta consulta na
prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
2. Para alterar a consulta clique em uma das clulas que contenha dados e
selecione o seguinte comando: Dados -> Obter dados externos -> Editar consulta...
11. O prximo passo fechar o Microsoft Query, retornando estes dados para
a planilha do Excel. Para fazer isso utilize o comando: Arquivo -> Retornar dados
ao Microsoft Excel.
12. O Excel abre uma janela solicitando que voc digite um valor para o
parmetro no campo PasDeDestino. Digite Brasil, conforme indicado na Figura 2.67
e clique em OK.
13. O Excel abre uma janela solicitando que voc digite um valor para o
parmetro no campo CidadeDeDestino. Digite Rio de Janeiro, conforme indicado na
Figura 2.68 e clique em OK.
14. O Excel abre a janela solicitando que voc informe a faixa da planilha
onde os dados da consulta devem ser exibidos. Por padro o Excel sugere a partir
da clula A1. Clique em OK. O Excel executa a consulta e dentro de alguns
instantes os dados sero exibidos na planilha, conforme indicado na Figura 2.69:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exerccio 03: Abrir o Excel, criar uma nova consulta baseada no endereo:
http://www.portalbrasil.eti.br/poupanca_2002.htm. Configurar o perodo de
atualizao desta consulta para 30 minutos. Salvar a planilha na pasta
C:\ExcelAvanado com o nome de Exercicio03Mod2.xls.
Exerccio 04: Abrir o Excel e definir uma fonte de dados para acessar os dados do
arquivo C:\ExcelAvanado\ExQuery.mdb. Aps acessar a fonte de dados usar o
Microsoft Query para acessar os seguintes campos da tabela Pedidos:
NmeroDoPedido.
DataDoPedido
CidadeDeDestino
PasDeDestino
Frete
Fazer com que sejam retornados apenas os pedidos para o Brasil, para primeiro
trimestre de 1997 e tambm para o segundo trimestre de 1996. Retornar tambm os
pedidos para a Alemanha, com valores de Frete na faixa entre R$ 15,00 e R$ 30,00.
Retornar os dados para o Excel e salvar a planilha com o nome de
Exercicio03Mod2.xls, na pasta C:\ExcelAvanado.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Bibliografia recomendada:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Este curso de autoria de Jlio Battisti, e faz parte do site www.juliobattisti.com.br. Visite o site
e confira sempre novos cursos (Excel Bsico e Avanado, Access Bsico e Avanado, PowerPoint
e muito mais), dicas de livros e sites, artigos sobre Certificaes Microsoft, simulados gratuitos
em Portugus, com respostas e comentrios, resumos para os exames MCSE e muito mais.
Clique aqui e confira.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Um relatrio de tabela dinmica uma tabela interativa que voc pode usar para
resumir rapidamente grandes quantidades de dados. Voc pode girar suas linhas e
colunas para ver resumos diferentes dos dados de origem, filtrar os dados por
meio da exibio de pginas diferentes ou exibir os detalhes de reas de
interesse. Considere o exemplo da Figura 3.1:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Dados de origem OLAP (On Line Analytical Processing): Os bancos de dados OLAP
organizam grandes quantidades de dados em dimenses e nveis em vez de linhas e
colunas. Voc pode usar relatrios de tabela dinmica para exibir e analisar
dados de bancos de dados OLAP. Como o servidor OLAP, no o Excel, calcula os
valores resumidos do relatrio de tabela dinmica, a recuperao de dados de um
banco de dados OLAP mais eficiente e voc pode analisar quantidades maiores de
dados do que em outros tipos de bancos de dados. O Excel tambm permite que voc
crie cubos OLAP a partir de dados de bancos de dados externos e salve os arquivos
de cubo para que possa trabalhar off-line com os dados.
Figura 3.3 - Nesse relatrio de tabela dinmica, o campo Produto contm os itens
Laticnios e Carnes.
Campos de linha: Campos dos dados de origem subjacentes aos quais atribuda uma
orientao de linha em um relatrio de tabela dinmica. No exemplo da Figura 3.5,
Produto e Vendido por so campos de linha. Um relatrio de tabela dinmica que
tem mais de um campo de linha tem um campo de linha interno (Vendido por, no
exemplo), o que est mais prximo da rea de dados. Os outros campos de linha so
denominados campos de linha externos. Campos de linha internos e externos tm
atributos diferentes. Itens no campo mais externo so exibidos apenas uma vez,
mas os itens no restante dos campos so repetidos conforme necessrio.
Seta suspensa de campo: A seta ao lado direito de cada campo. Clique nessa seta
para selecionar os itens que voc deseja mostrar.
Figura 3.6 - Um exemplo de uma lista suspensa para um campo de dimenso OLAP.
O ano 1998 est oculto. Dentro de 1999, Trim1 est oculto. As marcas de seleo
duplas nas caixas 1999 e Trim2 indicam que alguns ou todos os itens de nvel
inferior de 1999 e Trim2 esto exibidos. A marca de seleo simples na caixa 2000
indica que 2000 est atualmente selecionado para exibio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
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 3.7.
Na Lista da Figura 3.7 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:
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???
6. 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 3.9. Caso seja necessrio
voc pode alterar a faixa de dados.
10. Na Figura 3.11 temos a tela inicial, onde os campos ainda no foram
arrastados para as respectivas posies no relatrio de tabela dinmica.
11. 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.
12. Arraste o campo Ano para a rea onde est escrito: Solte campos de
pgina aqui.
14. Arraste o campo Nome da Empresa para a rea onde est escrito: Solte
campos de linha aqui.
16. Arraste o campo Trimestre para a rea onde est escrito: Solte campos
de coluna aqui.
18. Arraste o campo Vendas para a rea onde est escrito: Solte itens de
dados aqui.
19. Observe que, rapidamente, o Excel calcula o total de vendas por Empresa
e por trimestre, conforme indicado na Figura 3.12:
20. Observe que tambm calculado o Total Global, com a soma dos quatro
trimestres coluna F, bem como o Total Global por cliente linha 94.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo 3-2: 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 na
lio anterior.
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 trimestre de 1997. Compare os
valores da Figura 3.14 (somente pedidos para 1997) com os valores da Figura 3.16
(somente os pedidos para o segundo semestre de 1997).
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo 3-3: Voltar a exibir o total de vendas para todos os pedidos, ou seja,
retirar os filtros aplicados na Lio 4 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.
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.
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.
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
18. Mantenha essa planilha aberta, pois iremos utiliza-la na prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nessa lio aprenderemos a trabalhar com dois ou mais campos de coluna. Por
exemplo, iremos alterar a tabela dinmica da lio anterior, retirando o campo
Ano da rea de campos de pgina e arrastando ele para a rea de campos de coluna.
Vamos fazer isso atravs de um exemplo prtico:
Exemplo 3-4: Voltar a exibir o total de vendas para todos os pedidos, ou seja,
retirar os filtros aplicados na Lio 5. Em seguida vamos arrastar o campo Ano da
rea de Campos de pgina para a rea de campos de coluna.
1. Abra a lista Ano, clique na opo Tudo e depois clique em OK. Com isso
estamos removendo o filtro para o campo Ano.
trimestre de 1996, na coluna D temos o total geral de vendas por cliente para o
ano de 1996, na coluna E temos o total de vendas por cliente, para o primeiro
trimestre de 1997 e assim por diante.
10. Voc pode continuar usando a lista Ano (agora como um campo de Coluna)
para filtrar os dados. Por exemplo, abra a lista Ano, deixe selecionado apenas
1998 e depois clique em OK. Observe que somente apresentado o total de vendas,
por cliente, para os trimestres de 1998, conforme indicado na Figura 3.23.
Observe que tambm exibido o total por ano e o total geral.
11. Mantenha essa planilha aberta, pois iremos utiliza-la na prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nessa lio vamos avanar um pouco mais. Vamos alterar os campos que formam as
linhas da tabela dinmica. At agora utilizamos o campo Nome da Empresa como
campo para formar as linhas da tabela dinmica. Nesse lio vamos alterar a
estrutura da tabela dinmica, iremos adicionar os campos Pas de Destino e Cidade
de Destino e depois remover o campo Nome da Empresa, da rea de campos de linha.
Com isso teremos o total por Pas, dentro do pas por cidade, sendo exibidos os
totais por trimestre e por ano. A melhor maneira de entender a tabela dinmica
proposta v-la em ao, na prtica.
Figura 3.24 Campos Pas de Destino e Cidade de Destino como campos de linha.
5. Abra a lista Ano e deixe marcada apenas a opo 1997. Voc deve obter
os resultados indicados na Figura 3.25:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Temos o total de vendas por funcionrio por pas de destino, com a possibilidade
de aplicar filtros por ano e/ou trimestre.
Exerccio 02: Abra a planilha Modulo 3 Exerccio 02.xls e, a partir dos dados
dessa planilha, crie o seguinte relatrio de tabela dinmica:
Nessa tabela dinmica temos a contagem do nmero de pedidos por funcionrio por
trimestre e ano. Tambm existe a possibilidade de aplicar filtros por Pas de
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
6. 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 3.26. Caso seja
necessrio voc pode alterar a faixa de dados.
10. Na Figura 3.27 temos a tela inicial, onde os campos ainda no foram
arrastados para as respectivas posies no relatrio de tabela dinmica.
11. No nosso exemplo vamos comear pelo campo S 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.
12. Arraste o campo S Ano para a rea onde est escrito: Solte campos de
pgina aqui.
13. Agora vamos adicionar o campo S Trimestre. Esse campo ser mais um
item de pgina, ou seja, ao selecionarmos um valor para o Trimestre, o relatrio
ser filtrado para exibir o total de vendas apenas para o Trimestre selecionado.
14. Arraste o campo S Trimestre para a rea onde est escrito: Solte
campos de pgina aqui, abaixo do campo S Ano.
16. Arraste o campo Funcionrio para a rea onde est escrito: Solte campos
de linha aqui.
18. Arraste o campo Pas de Destino para a rea onde est escrito: Solte
campos de coluna aqui.
20. Arraste o campo Vendas para a rea onde est escrito: Solte itens de
dados aqui.
22. Observe que tambm calculado o Total Global, com a soma do total de
vendas por funcionrio e tambm por pas (linha 15).
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
6. 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. Caso seja necessrio voc pode alterar a faixa de
dados.
10. No nosso exemplo vamos comear pelo campo Pas de Destino. Esse campo
ser um item de pgina, ou seja, ao selecionarmos um valor para o Pas, o
relatrio ser filtrado para exibir nmero de pedidos apenas para o Pas
selecionado.
11. Arraste o campo PasDeDestino para a rea onde est escrito: Solte
campos de pgina aqui.
12. Agora vamos adicionar o campo Cidade de Destino. Esse campo ser mais
13. Arraste o campo Cidade de Destino para a rea onde est escrito: Solte
campos de pgina aqui, abaixo do campo S Ano.
15. Arraste o campo Funcionrio para a rea onde est escrito: Solte campos
de linha aqui.
17. Arraste o campo S Ano para a rea onde est escrito: Solte campos de
coluna aqui.
19. Arraste o campo S Trimestre para a rea onde est escrito: Solte
campos de coluna aqui, ao lado direito do campo S Ano.
21. Arraste o campo Nmero do Pedido para a rea onde est escrito: Solte
itens de dados aqui.
22. Observe que, o Excel fornece uma quantia de pedidos que no tem nada a
ver com a realidade, conforme indicado na Figura 3.29. Isso ocorre porque ao
invs de contar os pedidos, o Excel est somando os nmeros dos pedidos. Por
exemplo, vamos supor que para um determinado funcionrio tenhamos trs pedidos
diferentes, em um determinado Ano Trimestre: 10001, 10003 e 10005. Ao invs de
informar 3 pedidos, o Excel est somando esses nmeros, ou seja:
10001+10003+10005 = 30009. Isso ocorre porque, por padro, o assistente de tabela
dinmica usa a funo Soma. Vamos alterar de Soma para Contar.
23. Vamos configurar a tabela dinmica para que faa a contagem dos
pedidos, ao invs da soma. Voc deve estar com a barra de ferramentas Tabela
Dinmica aberta. Se essa barra de ferramentas no estiver aberta, selecione o
comando Exibir -> Barras de ferramentas -> Tabela dinmica.
27. Observe que agora o Excel exibe, corretamente, a quantia de pedidos por
Funcionrio Ano Trimestre, conforme indicado na Figura 3.33.
28. Observe que tambm feita a contagem Global, com a o nmero total de
pedidos por funcionrio e tambm por Ano.
29. Voc pode utilizar a lista Pas de Destino e Cidade de Destino para
filtrar os resultados obtidos, conforme descrito em lies anteriores.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Por exemplo, veremos que existe um comando que permite a seleo somente dos
rtulos da tabela dinmica, existe um outro comando que permite a seleo apenas
dos valores e assim por diante.
Nessa tabela calculado o total de vendas por Funcionrio Ano Trimestre. Foi
utilizado um filtro (na lista S Ano), para que fossem exibidos os totais de
vendas para o ano de 1997.
Nota: Para uma descrio completa dos comandos de formatao do Excel, bem como
para exemplos passo-a-passo sobre formatao, consulte o Curso de Excel Bsico em
Nota: Para uma descrio completa dos comandos de formatao do Excel, bem como
para exemplos passo-a-passo sobre formatao, consulte o Curso de Excel Bsico em
120 Lies, disponvel no seguinte endereo:
http://www.juliobattisti.com.br/excel120/excel120.asp.
Agora que j sabemos como fazer seleo estruturado em uma tabela dinmica,
estamos prontos para aprender o recurso de AutoFormatao. Mas isso assunto
para a Prxima Lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Para os exemplos dessa lio, vamos utilizar os dados da tabela dinmica indicada
na Figura 3.37:
Nessa tabela calculado o total de vendas por Funcionrio Ano Trimestre. Foi
utilizado um filtro (na lista S Ano), para que fossem exibidos os totais de
vendas para o ano de 1997.
Para formatar todas as clulas com valores numricos, siga os seguintes passos:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
11. Clique em OK. Voc estar de volta janela Campo da tabela dinmica.
Outra formatao que pode ser alterada a maneira como o Excel exibe clulas
vazias. No nosso exemplo, uma clula vazia significa que no houve vendas para
aquele cliente no respectivo trimestre. Por padro o Excel exibe essas clulas em
branco. Podemos alterar essa padro.
Para alterar a maneira como o Excel exibe clulas vazias em uma tabela dinmica,
siga os seguintes passos:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Salvar dados como layout de tabela: Salva uma cpia dos dados internos do
relatrio no arquivo da pasta de trabalho para que voc no tenha que
atualizar o relatrio antes de trabalhar com ele quando voc abrir o
arquivo da pasta de trabalho. Se voc no selecionar esta opo, o arquivo
da pasta de trabalho ser muito menor. Entretanto, voc deve marcar a caixa
de seleo Atualizar ao abrir ou clicar em Atualizar dados na barra de
ferramentas Tabela dinmica quando voc abrir a pasta de trabalho, antes de
trabalhar com o relatrio. Se voc no salvar esses dados, eles tambm
sero descartados de outros relatrios na pasta de trabalho que so
baseados nesse relatrio de tabela dinmica ou no relatrio de tabela
dinmica associado ao relatrio de tabela dinmica atual. Esta opo
ignorada em arquivos de modelos de relatrios.
Ativar anlise de dados: Desmarque a caixa de seleo para evitar a
exibio de detalhes ao clicar duas vezes em uma clula na rea de dados de
um relatrio de tabela dinmica. Em um relatrio de grfico dinmico, esta
opo afeta apenas o relatrio de tabela dinmica associado. Esta opo no
est disponvel para relatrios baseados em dados de origem de bancos de
dados OLAP.
Atualizar ao abrir: Atualiza os dados do relatrio de tabela dinmica e do
relatrio de grfico dinmico a partir dos dados de origem sempre que voc
abre a pasta de trabalho.
Atualizar a cada x minutos: Selecione para atualizar automaticamente o
relatrio de tabela dinmica ou grfico dinmico a partir dos dados de
origem externos e digite na caixa minutos o nmero de minutos que deve
haver entre as atualizaes.
Salvar senha: Se voc usar um banco de dados externo que necessite de uma
senha como a sua origem de dados para o relatrio de tabela dinmica ou de
grfico dinmico, marque a caixa de seleo Salvar senha para armazenar a
senha como parte do relatrio. Ao atualizar seu relatrio, voc no
precisar reinserir a senha. Por exemplo, pode ser que voc esteja criando
um relatrio de tabela dinmica a partir de dados de um banco de dados do
SQL Server, no qual deve ser fornecido informaes de logon. Voc pode
marcar essa caixa para no ter que informar a senha cada vez que abrir o
relatrio de tabela dinmica.
Consulta em segundo plano: Desmarque para esperar que os dados sejam
recuperados quando voc executar a consulta para recuperar os dados
externos do relatrio. Quando esta caixa de seleo for marcada, o
Microsoft Excel executar a consulta em segundo plano enquanto voc
prossegue com o seu trabalho. Esta opo no est disponvel para
relatrios baseados em dados de origem de bancos de dados OLAP.
Otimizar memria: Selecione para economizar memria durante a atualizao
do relatrio a partir de uma fonte de dados externa. Esta opo no est
disponvel para relatrios baseados em dados de origem de listas do
Microsoft Excel ou de bancos de dados OLAP.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
3. Nessa tabela dinmica temos o total de vendas por Cliente Ano, com o
campo Pas de Destino como campo de pgina. Com isso podemos filtrar o relatrio
para que sejam exibidos apenas os totais de vendas para os clientes de um
determinado pas.
Clique em OK. Os dados sero filtrados para exibir apenas os totais de vendas
para os clientes do Brasil.
7. Observe que, no prprio grfico, voc tem opes para aplicar filtros
por Pas de Destino, Ano ou Nome da Empresa. Vamos aplicar um filtro por Ano,
lembrando que, antes de criarmos o grfico, j havamos aplicado um filtro para
Pas de Destino = Brasil.
Figura 3.50 Grfico dinmico, aps a aplicao de um filtro para Ano = 1997.
10. Experimente mais alguns filtros. Abra a lista S Ano e marque novamente
1996, 1997 e 1998. Clique em OK. Agora so exibidos os totais de vendas para o
Brasil para todos os anos.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nota: Voc deve estar com o grfico do exemplo da Lio 15 ainda aberto. Caso
voc tenha fechado a planilha onde est o referido grfico, abra-a novamente.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exerccio: Alterar o grfico dinmico criado na lio anterior, para que seja
exibido o total de vendas por funcionrio, ao invs do total de vendas por
Cliente.
9. Clique em OK.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Temos o total de vendas por Produto por pas de destino, com a possibilidade de
aplicar filtros por ano e/ou trimestre.
Exerccio 04: Abra a planilha Modulo 3 Exerccio 04.xls e, a partir dos dados
dessa planilha, crie o seguinte relatrio de tabela dinmica:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Temos o total de vendas por Produto por pas de destino, sendo que foram
aplicados filtros, no prprio grfico, para exibir apenas as vendas para o
Brasil, no segundo trimestre de 1997.
Temos o total de vendas por Produto por funcionrios, sendo que foram aplicados
filtros, no prprio grfico, para exibir apenas as vendas para o funcionrio
Robert King, no segundo trimestre de 1997.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Bibliografia recomendada:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Este curso de autoria de Jlio Battisti, e faz parte do site www.juliobattisti.com.br. Visite o site
e confira sempre novos cursos (Excel Bsico e Avanado, Access Bsico e Avanado, PowerPoint
e muito mais), dicas de livros e sites, artigos sobre Certificaes Microsoft, simulados gratuitos
em Portugus, com respostas e comentrios, resumos para os exames MCSE e muito mais.
Clique aqui e confira.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Totalizao de dados:
Consolidao de dados:
Anlise de cenrios:
Criar cenrios: Por exemplo, se voc deseja criar um oramento mas no tem
certeza de sua receita, pode definir valores diferentes para a receita e alternar
entre os cenrios para efetuar anlises hipotticas.
No exemplo acima, voc poderia chamar o cenrio de Pior Caso, definir o valor na
clula B1 para R$ 50.000 e definir o valor na clula B2 para R$ 13.200.
Relatrios de resumo do cenrio: Para comparar vrios cenrios, voc pode criar
um relatrio que os resuma na mesma pgina. O relatrio pode listar os cenrios
lado a lado ou resumi-los em um relatrio de tabela dinmica. Aqui comeamos a
combinar diferentes recursos do Excel: usamos o recurso de cenrios para fazer
anlises e, em seguida, o recurso de tabelas dinmicas, para obter uma viso
consolidada dos dados.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nesta lio veremos um exemplo bsico do uso de subtotais. Nas prximas lies
abordaremos o assunto de subtotais, quando falaremos das ferramentas de anlise e
simulao do Microsoft Excel.
Nesta lio veremos um exemplo simples de como criar subtotais por vendedor.
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos.
12. Na lista A cada alterao em, selecionamos o campo no qual queremos que
os subtotais sejam calculados. No nosso exemplo selecione o campo Funcionrio.
valores onde sero efetuados os clculos. No nosso caso queremos somar o total de
vendas para cada funcionrio. Selecione a coluna Valor.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com 830 pedidos, bem como o
valor total de cada pedido.
12. Na lista A cada alterao em, selecionamos o campo no qual queremos que
os subtotais sejam calculados. No nosso exemplo selecione, inicialmente, o campo
Pas de Destino.
25. Na lista A cada alterao em, selecionamos o campo no qual queremos que
os subtotais sejam calculados. No nosso exemplo selecione o campo Cidade de
Destino.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberta uma planilha com uma lista com um subtotal por
funcionrio, conforme indicado na Figura 4.13:
Vamos aprender algumas configuraes que podem ser feitas nessa planilha.
Quando voc cria um novo subtotal, por padro, o Excel exibo os totais gerais ao
final de um grupo e nas colunas direita da planilha. Por exemplo, os totais
para cada funcionrio so exibidos aps a lista de registros para o respectivo
funcionrio. Podemos alterar essas configuraes.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Temos o total de vendas por ano e, dentro do ano, por trimestre, com a
possibilidade de expandir a exibio para mais detalhes, usando a estrutura de
botes de navegao.
Exerccio 02: Abra a planilha Modulo 4 - DadosEx 02.xls e, a partir dos dados
dessa planilha, calcule os subtotais indicados na figura a seguir:
Temos os subtotais por Pas de Destino e, dentro de cada pas, os subtotais dos
pedidos emitidos por cada funcionrio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Vamos considerar o seguinte exemplo: Voc recebe, mensalmente, uma planilha com
os consolidados de vendas por regio/produto. Ao final do ano voc precisa criar
uma planilha com o total anual de vendas. Vamos supor que os dados mensais
estejam em uma planilha com o nome do ms. Vamos supor que na clula E3, de cada
planilha, tenhamos o total de vendas do produto X para a regio Sul. Na clula E3
da planilha dos totais anuais, voc teria que utilizar a seguinte frmula:
=Jan!E3+Fev!E3+Mar!E3+Abr!E3+Mai!E3+Jun!E3+Jul!E3+Ago!E3
+Set!E3+Out!E3+Nov!E3+Dez!E3
Agora imagine o trabalho para criar todas as frmulas necessrias para o total
anual, especialmente se a planilha for complexa, com diferentes clculos. Com o
recurso de consolidao podemos fazer com que o Excel crie todas as frmulas
necessrias, automaticamente.
Por posio.
Por categoria.
A consolidao por posio somente indicada para fontes de dados que tem
estruturas idnticas e quando os usurios no alteram a localizao dos dados,
dentro das respectivas fontes.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberto o arquivo com quatro planilhas: Jan, Fev, Mar e Trim1.
11. Agora temos que informar ao Excel, as faixas onde esto os dados a
serem consolidados.
origem.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberto o arquivo com quatro planilhas: Jan, Fev, Mar e Trim1.
11. Agora temos que informar ao Excel, as faixas onde esto os dados a
serem consolidados.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
5. Clique em Abrir.
6. Ser aberto o arquivo com quatro planilhas: Jan, Fev, Mar e Trim1.
11. Agora vamos formatar os dados usando o formato Contbil com duas casas
decimais. Selecione a faixa de valores.
12. Selecione o comando Formatar -> Clulas. Marque a opo Contbil, com
duas casas decimais, conforme indicado na Figura 4.34:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nota: Para maiores detalhes sobre acessar dados externos no formato de arquivos
.txt, consulte as lies do Mdulo 1.
Vamos utilizar o Excel para calcular o total de vendas consolidado para os dois
anos. O Excel ir acessar os dados diretamente nos arquivos .txt e, a partir
desses dados fazer o clculo do total consolidado. Para isso teremos que criar
fontes externas de dados, conforme descrito nas lies do Mdulo 2.
Exerccio 07: Abrir o Excel e criar uma nova planilha, na qual ser calculado o
total consolidado de vendas para 1997 e 1998. Salvar a planilha com o nome de
Modulo 4 - Exerccio 07.xls na pasta C:\ExcelAvancado.
1. Abra o Excel.
3. Selecione o comando Dados -> Obter dados externos -> Importar arquivo
de texto...
16. Agora temos que informar ao Excel, as faixas onde esto os dados a
serem consolidados.
Nota: Os dados exibidos nas planilhas do excel, podem ser atualizados para
refletir alteraes que tenham sido feitas nos arquivos .txt, a partir dos quais
os dados foram importados. Para isso selecione o comando Dados -> Obter dados
externos -> Propriedades do intervalo de dados. Na janela que exibida voc pode
configurar um intervalo de atualizao, para que o Excel sincronize os dados da
planilha com os dados dos arquivos de texto. Voc tambm pode exibir a barra de
ferramentas Dados externos: Exibir -> Barra de ferramentas -> Dados externos. Em
seguida clique em uma das clulas de dados e depois clique no boto Atualizar
dados ( ), para que o Excel faa uma atualizao imediata dos dados.
Quaisquer alteraes que tenham sido feitas nos arquivos .txt, sero refletidas
na planilha quando a sincronizao for efetuada.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Tabelas de dados de varivel nica: Por exemplo, use uma tabela de dados de
varivel nica se voc desejar ver como diferentes taxas de juros afetam o
pagamento mensal de uma hipoteca. No exemplo a seguir, a clula D2 contm a
frmula de pagamento, =PGTO(B3/12,B4,-B5), que se refere clula de entrada B3.
Nota: Para maiores detalhes sobre funes financeiras tais como PGTO, consulte o
curso de Excel Bsico em 120 Lies, no seguinte endereo:
http://www.juliobattisti.com.br/excel120/excel120.asp.
Tabelas de dados com duas variveis: Uma tabela de dados com duas variveis pode
mostrar, por exemplo, como diferentes taxas de juros e prazos de emprstimos
afetaro o pagamento da hipoteca. No exemplo seguinte, a clula C2 contm a
frmula de pagamento, =PGTO(B3/12,B4,-B5), que usa duas clulas de entrada, B3 e
B4.
O Conceito de Cenrios:
Por exemplo, se voc deseja criar um oramento mas no tem certeza de sua
receita, pode definir valores diferentes para a receita e alternar entre os
cenrios para efetuar anlises hipotticas.
No exemplo acima, voc poderia chamar o cenrio de Pior Caso, definir o valor na
clula B1 para R$ 50.000 e definir o valor na clula B2 para R$ 13.200.
Relatrios de resumo do cenrio: Para comparar vrios cenrios, voc pode criar
um relatrio que os resuma na mesma pgina. O relatrio pode listar os cenrios
lado a lado ou resumi-los em um relatrio de tabela dinmica.
Quando voc sabe o resultado desejado de uma nica frmula mas no o valor de
entrada que a frmula precisa para determinar o resultado, pode usar o recurso
Atingir meta. Ao atingir meta, o Microsoft Excel varia o valor em uma clula
especfica at uma frmula dependente daquela clula retornar o resultado
desejado.
Por exemplo, use Atingir meta para alterar a taxa de juros na clula B3 de forma
incremental at que o valor do pagamento em B4 seja igual a R$ 900,00.
Solver:
Voc tambm pode determinar os valores resultantes quando precisar alterar mais
de uma clula usada em uma frmula e tiver vrias restries para esses valores.
O Solver ajusta os valores nas clulas especificadas para produzir o resultado
desejado da frmula.
Por exemplo, use o Solver para maximizar o lucro mostrado na clula F7 alterando
o oramento trimestral de publicidade (clulas B5:E5) e limitando o oramento
total de publicidade (clula F5) para R$ 40.000.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo proposto: Vamos utilizar um exemplo que clssico para simulaes de uma
varivel. Esse exemplo utilizado em diversos livros de Excel que tratam sobre
simulaes. Imagine que voc est analisando a hiptese de um emprstimo para
aquisio da casa prpria. Nesse caso voc far um emprstimo de R$ 150.000,00,
em 30 anos e quer calcular o valor da prestao mensal, com base em diferentes
taxas de juros oferecidas pelo mercado.
Exemplo 07: Nesse exemplo vamos fazer uma anlise de cenrio, para clculo do
valor da prestao mensal de um emprstimo com prazo de 30 anos 360 meses.
Usaremos os dados da planilha C:\ExcelAvancado\Modulo 4 - Exerccio 07.xls,
indicada na Figura 4.42:
1. Abra o Excel.
=PGTO(A6;360;D3)
Digite essa frmula na Clula C5. Voc deve estar se perguntando: O Jlio est
louco?. A6 uma clula vazia. Ao invs de A6 no seria B6. Utilizamos uma
clula vazia, acima do primeiro valor de entrada, para que o Excel possa fazer a
simulao. Quando inicia a simulao, o Excel usa a clula A6 como um local para
clculos temporrios, onde ele coloca a frmula de referncia, calcula o valor
para a primeira taxa de juros e em seguida transporta esse valor para o local
definitivo. Em seguida o Excel usa a prxima taxa de juros, calcula um novo valor
e transporta esse valor para o destino e assim por diante.
uma coluna. Para uma tabela de dados de duas variveis, insira referncias nessa
caixa e na caixa Clula de entrada da linha. o caso do nosso exemplo, onde os
valores de entrada esto na coluna B. A clula de entrada o endereo da clula
de referncia. Essa a clula em branco, ao lado dos valores de entrada. No
nosso exemplo a clula A5. Digite o endereo absoluto $A$5, conforme indicado
na Figura 4.46:
13. Dessa maneira voc poder fazer diferente simulaes, com diferentes
valores para o emprstimo.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo 08: Nesse exemplo vamos fazer uma anlise de cenrio, para clculo do
valor da prestao mensal de um emprstimo com prazo de 30 anos 360 meses,
baseado em diferentes taxas de juros e diferentes valores para o emprstimo.
Usaremos os dados da planilha C:\ExcelAvancado\Modulo 4 - Exerccio 08.xls,
indicada na Figura 4.49:
1. Abra o Excel.
frmulas de referncia.
Funo Na Clula
=PGTO(A6;360;C3) C5
=PGTO(A6;360;D3) D5
=PGTO(A6;360;E3) E5
Figura 4.52 Clculos feitos pelo Excel para o valor das prestaes.
13. Dessa maneira voc poder fazer diferente simulaes, com diferentes
valores para o emprstimo.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo 09: Nesse exemplo vamos fazer uma anlise de cenrio, para clculo do
valor da prestao mensal de um emprstimo com diferentes prazos, em meses,
baseado em diferentes taxas de juros, para um valor fixo do emprstimo. Usaremos
os dados da planilha C:\ExcelAvancado\Modulo 4 - Exerccio 09.xls, indicada na
Figura 4.53:
1. Abra o Excel.
=PGTO(A5;B4;C3)
Aps ter inserido a frmula ser gerado um erro #DIV/0!. Por enquanto isso
mesmo, voc no fez nada de errado.
13. Dessa maneira voc poder fazer diferente simulaes, com diferentes
valores para as taxas de juros, para os prazos e, at mesmo variando o valor do
emprstimo.
atualiza a planilha.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Quando voc sabe o resultado desejado de uma nica frmula mas no o valor de
entrada (ou das entradas) que a frmula precisa para determinar o resultado, pode
usar o recurso Atingir meta. Ao atingir meta, o Microsoft Excel varia o valor em
uma clula especfica at uma frmula dependente daquela clula retornar o
resultado desejado.
Por exemplo, use Atingir meta para alterar a taxa de juros na clula B3 de forma
incremental at que o valor do pagamento em B4 seja igual a R$ 900,00.
O comando Atingir Metas utiliza um mtodo iterativo para achar o valor que atenda
a situao proposta. Uma das limitaes desse comando que ele somente pode ser
utilizado para problemas de uma nica varivel. Por exemplo, voc no pode
utilizar o comando Atingir Metas para determinar a taxa de juros e o prazo, para
um determinado emprstimo, que produzam um valor especfico para a prestao.
Por padro o comando Atingir Metas interrompe os clculos aps 100 iteraes ou
depois de encontrar uma resposta que esteja dentro de 0,001 de seu valor de
destino especificado. Caso seja necessria uma preciso maior, podemos alterar o
nmero de iteraes e a preciso desejada. Para isso selecione o comando
Ferramentas -> Opes. Clique na guia Clculo e altere o valor dos campos N Mx.
de iteraes: e Alterao mxima, conforme indicado na Figura 4.
Exemplo 10: Nesse exemplo vamos criar uma nova planilha e usar a ferramenta
Atingir Metas:
1. Abra o Excel.
4. Agora vamos imaginar que voc queira calcular qual o emprstimo que
corresponde a uma prestao de 2000,00, que o valor mximo que voc poderia
pagar.
8. No campo Para valor, digite o valor a ser fixado para a clula B4. No
nosso exemplo digite 2000. importante que voc use o sinal de -, para indicar
que um pagamento.
11. A janela Status do comando atingir meta fica aberta. Clique em OK para
fecha-la.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
O que um Cenrio?
possvel criar vrios cenrios para um nico modelo de simulao, onde cada
cenrio apresenta um conjunto diferente de variveis. possvel proteger os
cenrios com senha para que no sejam modificados.
Criar cenrios: Por exemplo, se voc deseja criar um oramento mas no tem
certeza de sua receita, pode definir valores diferentes para a receita e alternar
entre os cenrios para efetuar anlises hipotticas.
No exemplo acima, voc poderia chamar o cenrio de Pior Caso, definir o valor na
clula B1 para R$ 50.000 e definir o valor na clula B2 para R$ 13.200.
Relatrios de resumo do cenrio: Para comparar vrios cenrios, voc pode criar
um relatrio que os resuma na mesma pgina. O relatrio pode listar os cenrios
lado a lado ou resumi-los em um relatrio de tabela dinmica.
Nessa lio vamos apresentar a planilha de dados que ser utilizada nos exemplos
prticos das prximas lies. Na prxima lio vamos aprofundar o estudo de
cenrios, atravs de exemplos prticos.
Nos exemplos das prximas lies vamos usar os dados da planilha indicada na
Figura 4.60:
Podemos criar diferentes cenrios. Por exemplo, podemos criar um cenrio com
valores diferentes para o valor mdio do aluguel e tambm aumentando o valor do
endividamento (valor da prestao). Ou poderamos criar um cenrio onde o nmero
de imveis seja aumentado atravs de um novo financiamento, com o conseqente
aumento do valor da prestao do financiamento.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Imveis 15
Financiamento 3520
Imveis 15
Financiamento 3520
Imveis 10
Financiamento 1530
1. Abra o Excel.
19. Ser exibida a janela Valores de cenrio. Nessa janela vamos informar
os valores para esse cenrio, conforme indicado na tabela a seguir:
Imveis 15 $B$1
24. Ser exibida a janela Valores de cenrio. Nessa janela vamos informar
os valores para esse cenrio, conforme indicado na tabela a seguir:
Imveis 15 $B$1
29. Ser exibida a janela Valores de cenrio. Nessa janela vamos informar
os valores para esse cenrio, conforme indicado na tabela a seguir:
Imveis 10 $B$1
31. Mantenha essa janela aberta pois iremos utiliza-la para simular
clculos para os diferentes cenrios. Mas isso s na prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
2. Vamos fazer com que o Excel recalcule os valores da planilha, com base
nos valores do Cenrio 2, que foi salvo com o nome de MenosDespesas, onde temos
os seguintes valores:
Imveis 15
Financiamento 3520
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Resumo de relatrio: Cria um relatrio que lista os seus cenrios com seus
valores de entrada e clulas de resultado. Utilize este tipo de relatrio apenas
quando o seu modelo tiver um conjunto de clulas variveis fornecido por um nico
usurio.
Tabela dinmica de cenrio: Cria um relatrio que fornece uma anlise hipottica
das variveis dos seus cenrios. Utilize este tipo de relatrio quando o seu
modelo tiver vrios conjuntos de clulas variveis fornecidos por mais de um
usurio.
7. Clique em OK.
8. Ser gerado um relatrio, consolidado, com base nos valores dos quatro
cenrios existentes, conforme indicado na Figura 4.73:
Figura 4.73 Relatrio consolidado, com base nos valores de quatro cenrios.
Observe que, em cada coluna, temos os valores para um cenrio. Em cada linha a
simulao para uma taxa de ocupao, comeando por um ms, at 12 meses. Com o
relatrio consolidado, temos uma viso global de todas as possibilidades,
fornecidas pelos diferentes cenrios.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Bibliografia recomendada:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Nas lies desse mdulo 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 bsicos da linguagem VBA.
Nas lies desse mdulo veremos os conceitos tericos da linguagem VBA. Nas
lies do prximo mdulo, veremos exemplos de aplicao do VBA para a soluo de
problemas prticos, os quais no poderiam ser solucionados sem o uso de
programao.
O que so Macros??
Nesse tpico apresentaremos uma viso geral sobre Macros. Nas prximas lies
iremos detalhar os vrios aspectos relacionados Macros.
Caso voc execute uma tarefa vrias vezes no Microsoft Excel, possvel
automatiz-la com uma macro. Uma macro uma seqncia de comandos e funes
armazenados em um mdulo 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 informaes sobre cada etapa realizada medida que voc
executa uma seqncia de comandos. Em seguida, voc executa a macro para repetir,
ou "reproduzir", os comandos.
Por exemplo, vamos supor que, seguidamente, voc precisa formatar uma clula com
Negrito, cor de fonte Vermelha, Itlico, Fonte Verdana de Tamanho 13 com quebra
automtica de linha. Ao invs de ter que executar todos os comandos de formatao
em cada clula, voc pode criar uma Macro que aplica todos os comandos de
formatao. Aps criada a Macro, cada vez que voc tiver que aplicar o conjunto
de comandos de formatao, basta executar a Macro, o que normalmente feito
atravs da associao de uma combinao de teclas com a Macro, como por exemplo
Ctrl+L. No nosso exemplo, cada vez que voc quisesse formatar uma clula com os
formatos descritos, bastaria clicar na clula e pressionar Ctrl+L. Bem mais fcil
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 gravao da macro, as correes feitas
tambm so gravadas. Ao gravar macros, o VBA armazena cada uma em um novo mdulo
Como Tornar uma macro fcil de ser executada: Voc pode executar uma macro
escolhendo-a de uma lista na caixa de dilogo Macro. Para que uma macro seja
executada sempre que voc clicar em um boto especfico ou pressionar determinada
combinao de teclas, voc pode atribuir a macro a um boto da barra de
ferramentas, um atalho no teclado ou um objeto grfico em uma planilha. Veremos
como fazer essas atribuies nas prximas lies.
Como Exibir e alterar macros: Depois de gravar uma macro, voc poder exibir o
cdigo da macro com o Editor do VBA para corrigir erros ou alterar a funo da
macro. O Editor do VBA um programa criado para facilitar a escrita e a edio
de cdigo de macro para principiantes e fornece bastante Ajuda on-line. Voc no
precisa aprender a programar ou a usar a linguagem do Visual Basic para fazer
alteraes simples nas suas macros. Nas prximas lies veremos como exibir e
editar macros.
Na Figura a seguir temos um exemplo de cdigo associado com uma Macro. Esse um
exemplo de cdigo VBA:
Como Gerenciar suas macros Com o Editor do VBA: Voc pode editar macros, copiar
macros de um mdulo para outro, copiar macros entre pastas de trabalho
diferentes, renomear os mdulos que armazenam as macros ou renomear as macros.
Por exemplo, se voc quisesse que a macro de retorno automtico de texto, do
exemplo anterior, tambm deixasse o texto em negrito, voc poderia gravar outra
macro para aplicar negrito a uma clula e copiar as instrues dessa macro para a
macro de retorno automtico de texto.
Segurana da macro: O Microsoft Excel 2000 fornece proteo contra vrus que
podem ser transmitidos atravs das macros. Se voc compartilha macros com outros
usurios, voc pode certific-las com uma assinatura digital de forma que os
outros usurios possam verificar que as macros so de origem confivel. Sempre
que voc abrir uma pasta de trabalho que contenha macros, poder verificar a
origem das macros antes de ativ-las. Aprenda sobre como evitar vrus de macro.
As Macros so uma excelente soluo quando queremos automatizar uma tarefa que
realizada atravs de uma srie de cliques de mouse ou digitaes no teclado.
Porm existem situaes mais complexas, que envolvem clculos ou uma lgica mais
apurada, onde no possvel encontrar a soluo do problema, simplesmente usando
os comandos ou frmulas prontas do Excel.
Nessas situaes temos que fazer uso de programao. Um programa (ou mdulo como
chamado no Excel) uma seqncia de comandos VBA, onde cada comando executa um
passo especfico, necessrio resoluo do problema.
Por exemplo, vamos supor que voc precisasse fazer a verificao do CPF que
digitado em uma clula. O clculo do DV do CPF, o qual de domnio pblico,
envolve uma srie de operaes aritmticas. Para implementar uma funo que faz a
verificao do DV do CPF, voc ter que fazer uso de programao.
Por isso que, conforme descrito anteriormente, nas lies desse mdulo veremos os
comandos bsicos da linguagem VBA, para aplica-los em alguns exemplos prticos
nas lies dos prximo mdulo.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
As Macros so uma excelente opo para automatizar tarefas repetitivas. Com o uso
de Macros temos um ganho de produtividade considervel, ao evitar que tenhamos
que executar manualmente, os diversos passos de uma tarefa, passos estes que
podem ser automatizados atravs do uso de uma macro.
Podemos usar o gravador de Macros: Nesse caso o Excel grava cada uma das
aes que faro parte da Macro e transforma essas aes nos comandos VBA
equivalentes. Quando a macro for executada, os comandos VBA que sero
efetivamente executados. Cada comando VBA corresponde a uma ao 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 necessrios.
Isso feito usando o Editor de VBA, conforme veremos nas prximas lies.
Melhor do que uma srie de definies ver uma Macro em ao. Vamos a um exemplo
simples, onde criaremos uma Macro. Em seguida vamos executa-la . Na prxima lio
analisaremos o cdigo VBA criado pelo gravador de macros.
Exemplo 1: Criar uma macro usando o Gravador de Macros. A macro dever formatar a
clula atual com Negrito, cor de fonte Vermelha, com fundo cinza. Gravar a macro
com o nome de FormataVermCinza.
1. Abra o Excel.
10. Clique em OK. A gravao da Macro ser iniciada. Todos os comandos que
voc executar, durante a gravao da Macro, faro parte da Macro.
2. Pressione Ctrl+Shift+L.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Ou de outra forma:
Conforme veremos nessa lio, uma macro gravada no Excel como uma seqncia de
Para acessar os comandos VBA associado com uma macro, siga os seguintes passos:
Sub FormataVermCinza()
'
' FormataVermCinza Macro
' Macro que faz a formatao em fonte Vermelha, Negrito e
' fundo Cinza.
'
' Atalho do teclado: Ctrl+Shift+L
'
Selection.Font.Bold = True
Selection.Font.ColorIndex = 3
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
End Sub
Esses so os comandos VBA (que por enquanto no 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 formatao em Negrito para a clula onde est o cursor (ou
no conjunto de clulas selecionadas), quando a macro executada.
Selection.Font.ColorIndex = 3
Esse comando aplica cor de fonte Vermelha para a clula onde est o cursor (ou no
conjunto de clulas selecionadas), quando a macro executada.
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
Esses comandos aplicam a cor de fundo cinza, na clula onde est o cursor (ou no
conjunto de clulas selecionadas), quando a macro executada.
Esses so comandos da linguagem VBA. Com o uso do VBA temos acesso a todos os
comandos e funes do Microsoft Excel. Tudo o que voc faz usando o teclado e o
mouse, tambm possvel de ser feito com o uso do VBA, porm de uma maneira
automatizada. O uso de macros especialmente indicado naquelas situaes em que
temos um conjunto de comandos que precisam ser executados, repetidamente, em
diferentes situaes. Nesses casos muito mais prtico 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 viso do Editor do Visual Basic. Veremos mais detalhes
sobre esse editor nas prximas lies, quando comearmos a trabalhar com o VBA.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Existem algumas operaes que podem ser feitas com uma macro, aps a sua criao.
A mais bvia (e o motivo pelo qual uma macro criada) para executar a macro.
Alm da execuo possvel executar outras operaes com uma macro, conforme
descrito a seguir:
6. Ser aberto o editor do VBA. O nome da macro vem logo aps o comando
Sub da primeira linha, conforme destacado na Figura 5.6:
7. Para renomear a macro basta alterar o nome aps o comando Sub e depois
Para alterar a tecla de atalho e o comentrio associado com uma macro, siga os
seguintes passos:
6. Ser exibida a janela Opes de Macro, onde voc pode alterar a tecla
de atalho e o comentrio associado com a macro, conforme indicado na Figura 5.8:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Exemplo 2: Criar uma macro usando o Gravador de Macros. A macro dever formatar
As clulas selecionadas com formato Contbil, com duas casas decimais, cor de
fonte Vermelha e Itlico. Gravar a macro com o nome de FormataContbil. Criar um
boto de comando na Barra de Ferramentas padro e associar esse boto com a macro
FormataContbil.
1. Abra o Excel.
10. Clique em OK. A gravao da Macro ser iniciada. Todos os comandos que
voc executar, durante a gravao da Macro, faro parte da Macro.
do boto ( ).
8. D um clique no boto ( ).
aplicadas clula F10. Isso comprova que o boto ( ) est associado macro
FormataContbil.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Encerrar a macro
A utilizao de Macros em conjunto com os recurso do VBA nos oferece um grande nmero
de opes na busca por solues para os problemas mais complexos. Porm existem
situaes em que, por mais que saibamos utilizar todos os recursos, comandos e funes
do Excel, essa utilizao no capaz de solucionar o problema proposto. Nestas
situaes temos que utilizar programao.
A linguagem de programao 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. Tambm temos acesso a elementos
externos, tais como bancos de dados do Access. Com cdigo VBA podemos criar uma rotina
para validao do dgito verificador de uma clula de CPF, CNPJ ou de um campo
NmeroDoProcesso; podemos criar cdigo que percorre todas as linhas de uma planilha,
alterando os valores de uma ou mais colunas, com base em uma ou mais condies,
podemos automatizar rotinas para importao e exportao de dados e assim por diante.
3.Aprendendo VBA:
4.Exerccios e Exemplos.
5.Funes e procedimentos.
Acessando dados de uma ou mais planilhas: Com aes 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.
Manipulao de objetos: O VBA oferece mtodos de criao e modificao dos
objetos de uma planilha no Excel (assunto que ser abordado nas lies do Mdulo
6). Chamamos de objeto qualquer elemento do Microsoft Excel, por exemplo: uma
planilha, uma faixa de clulas, um grfico, etc.
Criao de funes definidas pelo usurio: Este um dos maiores benefcios do
VBA. Podemos criar funes que executam clculos repetitivos. Por exemplo, vrios
planilhas podem conter um campo CPF ou CNPJ. Poderamos criar, em cada planilha,
o cdigo necessrio para a validao do DV do CPF ou CNPJ. Porm este
procedimento no o mais indicado, pois alm da duplicao do cdigo necessrio
a validao, teramos dificuldades para fazer atualizaes neste cdigo, pois
cada alterao necessria ter que ser feita em vrios locais. O ideal criarmos
uma funo para validao do DV (uma funo deve ser criada dentro de um mdulo.
Trataremos disso mais adiante.). Em cada planilha, onde for necessria, chamamos
a funo, passando o valor do CPF como parmetro. A funo calcula o DV e retorna
o resultado para a planilha. Desta maneira precisamos criar uma nica funo.
Quando forem necessrias alteraes, basta alterar a funo (em um nico local,
ou seja, no mdulo onde a funo foi criada) e todos os formulrios passaro a
utilizar a verso atualizada da funo.
Definio de condies e controle de fluxo: O VBA oferece uma variedade de
comandos e estruturas para a realizao de testes condicionais e para a repetio
de um conjunto de comandos. Aprenderemos a utilizar todas as estruturas de
controle de fluxo e testes condicionais, mais adiante.
Realizao de clculos complexos e soluo de problemas que envolvem uma lgica
complexa: Com macros impossvel a realizao de clculos mais complexos,
simplesmente atravs da automao de comandos de teclado e mouse. Tambm no
possvel a resoluo de problemas que envolvem uma lgica complexa, como por
exemplo clculo do imposto de renda, recolhimentos de tributos, etc.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
Project VBA Project: Nessa janela so exibidos os vrios elementos que fazem
parte da Pasta de trabalho atual. Aqui so exibidas as planilhas e mdulos da
pasta de trabalho (arquivo .xls) carregado no Excel. Ao criarmos uma macro
podemos cria-la em uma determinada planilha. Os mdulos so utilizados para criar
funes e procedimentos que podem ser chamados em todas as planilhas da pasta de
trabalho atual. Aprenderemos mais sobre funes e procedimentos nas prximas
lies.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
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 cdigo VBA da macro AplicaNegrito (conforme descrito na
lio 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 execuo da Macro usaremos a combinao de teclas Ctrl+Shift+K, a
qual est associada macro.
Dim x
Dim nome
Dim teste
Neste caso estamos apenas declarando o nome da varivel, sem declarar de que tipo
(texto,inteiro, data, etc) a varivel. Uma varivel declarada sem tipo
considerada do tipo Variant, o que na prtica significa que a varivel pode
conter qualquer tipo de valor. Pode parecer uma prtica interessante a no
declarao do tipo da varivel, porm isso altamente desaconselhvel. Se no
declararmos o tipo, conforme descrito anteriormente, a varivel poder conter
qualquer valor. Neste caso o que impede de um campo numrico conter valores de
texto ou vice-versa??
Tambm podemos declarar mais do que uma varivel, com um nico comando Dim. Para
isto, basta separar as variveis, com vrgula, conforme exemplificado abaixo:
IMPORTANTE: Observe que definimos o tipo de cada varivel. O Tipo define quais
dados podem ser armazenados em uma varivel. Por exemplo, variveis que armazenam
valores numricos, no devem aceitar caracteres de texto. Variveis que armazenam
datas, no devem aceitar datas invlidas, como por exemplo 30/02/2001. Toda
varivel no VBA, do tipo Variant, isto significa que a varivel pode ser de
qualquer tipo. O que define o tipo da varivel o valor que est armazenado no
momento. Existem funes que converso de tipo, conforme veremos mais adiante.
Option Explicit
Dim a As Integer
Dim b As Integer
a=5
b=2
c=a+b
Msgbox "A varivel C vale: " & c
Ao tentarmos executar este cdigo, tendo sido definida a opo "Option Explicit",
obteremos a mensagem de erro indicada na prxima figura. Este erro acontece
porque tentamos utilizar uma varivel c, varivel esta que no foi declarada.
Subtipo Subtipo
Antes de fazermos alguns exemplos prticos, vamos aprender um pouco mais sobre o
uso de variveis no VBA. Vamos falar sobre operadores aritmticos e de
comparao. Mas isso j assunto para a prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Dim x, y, z As Integer
x = 10
y = 25
z = x*y
1. Abra o Excel.
Dim a As Integer
Dim b As Integer
Dim som, subtr, divis, mult, intdivs, expo, modul As Double
a = 25
b = 3
Uso os operadores aritmticos para efetuar clculos
som=a+b
subtr=a-b
divis=a/b
mult=a*b
intdivs=a\b
expo=a^b
modul= a mod b
MsgBox "Os nmeros so: " & a & " e " & b & Chr(13)
MsgBox "Soma: " & som & Chr(13)& "Subtrao: " & subtr & Chr(13)
MsgBox "Diviso: " & divis & Chr(13)& "Multiplicao: " & mult & Chr(13)
MsgBox "Diviso inteira: " & intdivs & Chr(13)& "Exponenciao: " & expo & Chr(13)
MsgBox "Resto da diviso: " & modul
28. Mantenha a planilha aberta pois iremos utiliza-la nas demais lies
desse mdulo.
MsgBox "Os nmeros so: " & a & " e " & b & Chr(13)
Neste exemplo, primeiro exibido o texto: "Os nmeros so:" , logo em seguida o
valor da varivel a. Observe que as duas partes so concatenadas com o operador
&. Depois concatenamos o valor da varivel b, e finalmente utilizamos a funo
Chr(13). A funo Chr(nmero), envia o caractere correspondente ao nmero
digitado entre parnteses. Este nmero, o nmero do caractere no padro ASCII
(American Standard Caracter Interchange Information). No cdigo ASCII, cada
caracter possui um nmero associado. No caso o nmero 13, associado ao <ENTER>.
Com isso estamos enviando um <ENTER>, para a caixa de mensagem, o que equivale a
uma troca de linha. Assim utilizamos o Chr(13), para simular um <ENTER>, de tal
maneira que os dados no saiam todos emendados, na mesma linha.
Com o uso dos operadores aritmticos , realizamos uma srie de operaes sobre as
variveis existentes no cdigo da macro AplicaNegrito.
Vamos avanar um pouco mais no nosso estudo sobre operadores. Vamos tratar dos
operadores de comparao. Esse justamente o assunto da prxima lio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
If x>y Then
Comandos a serem executados quando x for maior do que y
Comando 1
Comando 2
...
Comando n
Else
Comandos a serem executados quando x for menor ou igual a y
Comando 1
Comando 2
...
Comando n
End If
1. Abra o Excel.
2. Abra a Planilha C:\ExcelAvancado\ Mdulo 5 Exemplo VBA.xls.
3. Como existem macros j criadas, o Excel pede uma confirmao,
perguntando se voc deseja ativar as macros existentes. Essa confirmao
solicitada devido ao perigo representado pelos vrus de Macro, que podem afetar
os aplicativos do Microsoft Office.
4. Clique no boto Ativar Macros.
5. A planilha ser aberta.
6. Nessa planilha existe uma macro chamada AtivaNegrito. Vamos editar essa
macro. O nosso objetivo utilizar as estruturas If...Then...Else e os operadores
de comparao.
7. Selecione o comando Ferramentas -> Macro -> Macros...
8. Ser exibida a janela Macro.
9. Clique na macro AplicaNegrito para seleciona-la.
10. Clique no boto Editar.
11. Ser aberto o editor do VBA e o cdigo associado macro AplicaNegrito.
12. Altere o cdigo, para que fique conforme indicado na listagem a seguir:
Selection.Font.Bold = True
x=12
y=15
z=20
k=15
If x<y Then
MsgBox "x menor do que y."
Else
MsgBox "x maior do que y."
End If
If y<x Then
MsgBox "Y menor do que x"
Else
MsgBox "Y maior do que x"
End If
If y<=k Then
MsgBox "y menor ou igual k"
Else
MsgBox "Y maior do que k"
End If
If x<>z Then
MsgBox "x e z so diferentes"
End If
Comparao Resultado
Entre duas variveis com valores Comparao normal.
numricos.
Entre duas variveis com valores do efetuada uma comparao entre valores de
tipo texto. texto. Por exemplo Xuxa maior do que Abel
(X vem depois do A).
Uma das variveis possui um valor O valor numrico ser sempre considerado
numrico e outra possui um valor de menor do que o valor de texto.
texto
Uma das variveis possui um valor Efetua uma comparao numrica, atribuindo
numrico e a outra est vazia. 0 (zero) para a varivel vazia.
Uma varivel possui um valor de texto Efetua uma comparao de texto, atribuindo
e a outra est vazia, sem valor. texto de comprimento zero (" ")para a
varivel vazia.
As duas variveis possuem um valor So consideradas iguais.
vazio.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
O escopo de uma varivel, define em que partes do cdigo a varivel pode ser
utilizada. Em VBA, podemos ter os seguintes escopos para as variveis:
Escopo de Mdulo: Uma varivel declarada dentro do Mdulo (um mdulo pode
conter um ou mais procedimentos ou funes, cada procedimento funo
comea com um Sub ou Function e termina com um End Sub ou End Function,
respectivamente. Veremos mais sobre funes e procedimentos, nas prximas
lies), mas fora de qualquer Procedimento. Com isso a varivel pode ser
utilizada dentro de todo o bloco de cdigo do Mdulo, inclusive dentro
dos Procedimentos, caso exista algum. Um mdulo de uma planilha pode
conter uma ou mais macros, sendo que cada macro um procedimento, isto
, inicia com um Sub e termina com um End Sub. Tudo o que estiver entre
Sub e End Sub, faz parte da respectiva macro. Uma varivel declarada ao
nvel de Mdulo, existe enquanto o Mdulo estiver sendo executado.So as
variveis declaradas na seo de Declaraes do Mdulo. Uma varivel
declarada ao nvel de Mdulo, poder ser utilizada em todos os
procedimentos/funes do mdulo, isto , em todas as macros que fazem
parte do respectivo mdulo.
NOTA: Um procedimento um bloco de cdigo que pode ser chamado em qualquer ponto
do Mdulo. Ao chamarmos um procedimento, a execuo deslocada para dentro do
procedimento. Aps concludo o procedimento, a execuo segue com a linha
seguinte que chamou o procedimento. Veremos maiores detalhes sobre
procedimentos e funes nas prximas lies.
Vamos considerar alguns trechos de cdigo para entendermos melhor este conceito
de escopo de uma varivel.
Considere o seguinte trecho de cdigo, dentro de um mdulo VBA de uma planilha do
Excel:
Aux1 = a + b
MsgBox "aux1= " & Aux1
a=5
b=7
MsgBox "x= " & x & " y= " & y & " a= " & a & " b= " & b
End Sub
O comando Call faz o chamado ao procedimento proc1. Este procedimento deve ser
definido no mesmo mdulo, caso contrrio um erro ser gerado. Ao encontrar esse
comando o Excel desloca a execuo para o procedimento proc1, executa os comandos
deste procedimento e aps encerrar continua a execuo a partir do comando
seguinte ao comando Call.
Como a e b esto declaradas dentro de Proc1, o seu escopo est ativo, isso , o
Excel tem acesso aos valores de a e b. Porm observe que x e y apresentam valores
nulos. Isso ocorre porque a e b foram declarados. Por isso os valores de a e b
tambm so exibidos corretamente. Agora vamos fazer uma tentativa de usar as
variveis a e b fora do procedimento Proc1. Como elas foram declaradas dentro de
Proc1, somente so visveis, isto , mantm o seu valor quando Proc1 estiver
sendo executada. Fora de Proc1, as variveis a e b tero valores nulos, conforme
comprovaremos logo a seguir:
Como possvel se aux1= a + b e a=5 e b=7, logo aux1 deveria ser igual a 12. O
que est acontecendo?? Observe que o valor da varivel aux1 (foi calculado
incorretamente), pois a varivel aux1 depende dos valores de "a" e "b". Como as
variveis a e b foram declaradas dentro do procedimento Proc1, elas no podem ser
acessadas de fora do procedimento proc1, ou seja, aps a execuo do procedimento
ter sido encerrada.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
If condio Then
Comando1
Comando2
...
Comandon
End IF.
Dim x, y
x=10
y=15
If x<y Then
MsgBox x menor do que y
End If
Neste exemplo, a mensagem x menor do que y, ser exibida, uma vez que o teste
x<y verdadeiro, conforme podemos constatar pelos valores atribudos as
variveis x e y.
If condio Then
Comando1
Comando2
...
Comandon
Else
Comando1
Comando2
...
Comandon
End IF
Dim x, y
x=15
y=10
If x<y Then
MsgBox x menor do que y
Else
MsgBox x maior do que y
End If
Neste exemplo, a mensagem x maior do que y, ser exibida, uma vez que o teste
x<y falso, conforme podemos constatar pelos valores atribudos as variveis x e
y.
If condio Then
Comandos a serem executados, caso a condio seja verdadeira.
Comando1
Comando2
...
Comandon
ElseIf condio-2
Comandos a serem executados, caso a condio2 seja verdadeira.
Comando1
Comando2
...
Comandon
ElseIf condio-3
Comandos a serem executados, caso a condio3 seja verdadeira.
Comando1
Comando2
...
Comandon
...
ElseIf condio-n
Comandos a serem executados, caso a condio n seja verdadeira.
Comando1
Comando2
...
Comandon
Else
Comandos a serem executados, caso nenhuma das condies anteriores seja
verdadeira.
Comando1
Comando2
...
Comandon
End IF.
Dim x, y
Dim z, k
Dim w, p
x=35
y=30
z=25
k=20
w=15
p=10
If x<y Then
MsgBox x menor do que y
ElseIf x<z Then
MsgBox x menor do que z
ElseIf x<k Then
MsgBox x menor do que k
ElseIf x<w Then
MsgBox x menor do que w
ElseIf x<p Then
MsgBox x menor do que p
Else
MsgBox x o maior dos nmeros
End If
Neste exemplo, a mensagem x maior dos nmeros, ser exibida, uma vez que
todos os testes anteriores falham (pois x o maior nmero), com isso somente
ser executado o ltimo MsgBox, que faz parte do Else.
A estrutura Select...Case
Quando precisamos realizar uma srie de testes, mais eficiente utilizarmos uma
nica estrutura Select...Case, do que utilizarmos uma srie de testes utilizando
a estrutura If...Then...ElseIf.
Dim x
x=10
Select Case x
Case 2
MsgBox X vale 2 !
Case 4
MsgBox X vale 4 !
Case 6
MsgBox X vale 6 !
Case 8
MsgBox X vale 8 !
Case 10
MsgBox X vale 10 !
Case Else
MsgBox X no um nmero par, menor do que 12
End Select
A estrutura Select Case x, vai testar o valor de x. Em cada um dos Case, o valor
de x est sendo testado. Quando for encontrado um valor coincidente com o de x,
os comandos abaixo deste Case sero executados. No nosso exemplo, o comando
MsgBox X vale 10 !, abaixo de Case 10, ser executado. O comando abaixo do Case
Else somente ser executado, se todos os testes anteriores falharem.
O uso da estrutura Select...Case, torna o cdigo mais eficiente e de mais fcil
leitura.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
A estrutura For...Next.
Utilizamos o lao For...Next, para repetir um segmento de cdigo, um nmero
determinado de vezes. Utilizamos esta estrutura, quando j sabemos o nmero de
vezes que uma determinada seo de cdigo deve ser repetida. Neste tipo de
estrutura, normalmente, utilizamos uma varivel como contador. Este contador
varia de um valor inicial at um valor final. O Formato geral desta estrutura o
seguinte:
For contador = inicio to fim incremento
Comando1
Comando2
...
Comandon
Next
Dim x
x=10
Soma=0
Dim x
x=10
Soma=0
A estrutura Do...Loop.
Esta estrutura pode ser utilizada para repetir um trecho de cdigo, enquanto uma
determinada condio for verdadeira, ou at que uma determinada condio torne-se
verdadeira. Podemos utilizar dois operadores condicionais diferentes: While ou
Until. Os operadores While ou Until, podem ser utilizados de duas maneiras
diferentes: No incio do lao, ou no final do lao. Com isso temos quatro
situaes distintas, vamos analisar cada uma delas, a partir de agora.
Do While condio/teste
Comando1
Comando2
...
Comandon
Loop
IMPORTANTE: O Cdigo dentro do lao deve ser capaz de alterar a condio para que
essa se torne Falsa, pois caso contrrio a condio ser sempre verdadeira, e os
comandos dentro do lao ficaro em execuo, infinitamente, ou at o programa
travar. A criao de laos infinitos, devido a erros de programao, uma causa
comum de erros e travamentos.
Considere o exemplo a seguir:
Dim x
x=10
Contador=1
Soma=0
Observe que dentro do lao, vamos Incrementando o valor da varivel Contador, uma
unidade para cada passagem do lao. Com isso, quando o valor de Contador, atingir
11, o teste do incio do lao torna-se falso, e o lao encerrado.
Do
Comando1
Comando2
...
Comandon
Loop While condio/teste
Nesta estrutura, enquanto a condio for verdadeira, o cdigo dentro do lao
executado. Quando a condio tornar-se falsa, o primeiro comando aps o final do
lao, ser executado. Neste caso, se a condio for falsa j na primeira vez, o
lao ser executado uma nica vez.
IMPORTANTE: O Cdigo dentro do lao deve ser capaz de alterar a condio para
Falso, quando for necessrio, pois caso contrrio a condio ser sempre
verdadeira, e os comandos dentro do lao ficaro em execuo, infinitamente, ou
at o programa travar. A criao de laos infinitos, devido a erros de
programao, uma causa comum de erros e travamentos.
Considere o exemplo a seguir:
Dim x
x=10
Contador=1
Soma=0
Do
Soma = Soma + Contador
Contador = Contador + 1
Loop While Contador <= x
Dim x
x=10
Contador=11
Soma=0
Do Until condio
Comando1
Comando2
...
Comandon
Loop
Dim x
x=10
Contador=1
Soma=0
Observe que dentro do lao, vamos Incrementando o valor da varivel Contador, uma
unidade para cada passagem do lao. Com isso, quando o valor de Contador, atingir
11, o teste do incio do lao torna-se Verdadeiro, e o lao encerrado.
Do
Comando1
Comando2
...
Comandon
Loop Until condio
Nesta estrutura, enquanto a condio for Falsa, o cdigo dentro do lao
executado. Quando a condio tornar-se Verdadeira, o primeiro comando aps o
final do lao, ser executado. Neste caso, se a condio for Verdadeira, j na
primeira vez, o lao ser executado uma nica vez.
Dim x
x=10
Contador=1
Soma=0
Dim x
x=10
Contador=11
Soma=0
Do
Soma = Soma + Contador
Contador = Contador + 1
Loop Until Contador >= x
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
A funo IsArray.
Um Array um tipo especial de varivel, a qual pode armazenar diversos valores em
uma nica varivel. De uma forma simples, um Array um conjunto ou como aprendi nos
bons e velhos tempos da faculdade de Engenharia Eltrica na UFSM: Um vetor. Por
exemplo, poderamos ter uma varivel Array na qual so armazenados todos os cdigos
de tributo, vlidos para o recolhimento de impostos. Cada valor armazenado no Array
um elemento do conjunto. Um outro exemplo: Poderamos criar um Array para armazenar
os nomes dos meses do ano. Com isso teramos um Array de 12 elementos.
Cada elemento de um Array, acessado atravs do nome da varivel Array e de um
ndice. O ndice inicia em zero e no em um. Por isso se tivermos um Array de 10
elementos, teremos o elemento 0, o elemento 1, o elemento 2, e assim por diante, at
o elemento 9. O fato do ndice comear com 0, influencia na hora que formos declarar
um Array. Para declarar um Array chamado produtos, com 20 elementos, utilizaramos o
seguinte comando:
Dim produtos(19)
O 19 significa que temos 20 elementos (sempre um a mais do que o nmero que aparece
na declarao), isto , do elemento 0, indicado por produtos(0), at o elemento 20,
indicado por produtos(19).
MsgBox mensagem
Utilizamos a funo IsArray, para determinar se uma varivel do tipo Variant (lembre
que todas as variveis do VBA, so do tipo Variant), est armazenando um Array.
A funo VarType.
Podemos utilizar a funo VarType, para determinar o subtipo de uma varivel. Como
todas as variveis so do tipo Variant, o subtipo pode ser utilizado para determinar
o tipo de dado armazenado na varivel. Passamos para a funo, o nome de uma varivel
ou expresso. A funo retorna um nmero inteiro que indica o subtipo da varivel.
A sintaxe da funo a seguinte:
VarType(NomeDaVarivel)
ou
VarType(expresso)
Na Tabela a seguir temos os cdigos de retorno da funo VarType.
Valor Descrio
0 Vazio (no inicializado)
1 Nulo (dados no vlidos)
2 Inteiro
3 Inteiro longo
4 Nmero de preciso simples
5 Nmero de preciso dupla
6 Monetrio.
7 Data
8 Texto
9 Objeto de automao
10 Erro
11 Boleano
12 Variant (somente utilizado com Arrays de
variantes)
13 Um objeto para acesso a dados.
17 Byte
8192 Array
Dim x,y,z
Dim a, b
Dim c(20)
Dim mensagem As String
x=12
y=23.456
y=123456789
a="Este um valor de texto !"
b=Date()
mensagem = "Tipo da varivel x: " & Vartype(x) & Chr(13)
mensagem = mensagem & "Tipo da varivel y: " & Vartype(y) & Chr(13)
mensagem = mensagem & "Tipo da varivel z: " & Vartype(z) & Chr(13)
mensagem = mensagem & "Tipo da varivel a: " & Vartype(a) & Chr(13)
mensagem = mensagem & "Tipo da varivel b: " & Vartype(b) & Chr(13)
mensagem = mensagem & "Tipo da varivel c: " & Vartype(c) & Chr(13)
MsgBox mensagem
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
IsDate(NomeDaVarivel)
ou
IsDate(expresso)
If IsDate(x) Then
MsgBox "Voc digitou uma data vlida !"
Else
MsgBox "Data invlida, digite novamente !"
End If
A funo IsEmpty.
A funo IsEmpty recebe uma varivel ou expresso como argumento, e determina se, em
algum momento, foi atribudo algum valor para a varivel ou expresso. Caso tenha
sido atribudo algum valor, a funo retorna Verdadeiro, caso contrrio, retorna
Falso. Podemos utilizar esta funo, por exemplo, para verificar se um campo de
digitao obrigatria, como por exemplo o nome, no foi deixado em branco.
IsEmpty(NomeDaVarivel)
ou
IsEmpty(expresso)
A seguir temos um exemplo de utilizao da funo IsEmpty.
a=10
b=23
c=a+b
If IsEmpty(x) Then
MsgBox "A varivel x, no foi utilizada !"
End If
A varivel x foi declarada porm no foi inicializada, com isso est vazia, logo a
funo IsEmpty(x) ir retornar Verdadeiro.
A funo IsNull.
A funo IsNull recebe uma varivel ou expresso como argumento, e determina se, em
algum momento, foi atribudo o valor Null para a varivel ou expresso. Caso tenha
sido atribudo o valor Null, a funo retorna Verdadeiro, caso contrrio, retorna
Falso. Para atribuirmos Null para uma varivel, utilizamos a seguinte sintaxe:
NomeDaVarivel = Null
IMPORTANTE: Uma varivel com valor Null, no a mesma coisa que uma varivel com
valor zero, ou uma varivel de texto com tamanho zero. Quando atribudo o valor
Null para a varivel, esta continua existindo na memria, porm sem nenhum valor
definido.
ou
IsNull(expresso)
x = Null
If IsNull(x) Then
MsgBox "A varivel x Nula !"
End If
A funo IsNumeric.
A funo IsNumeric recebe uma varivel ou expresso como argumento, e determina se o
valor atribudo varivel ou expresso numrico, ou pode ser convertido para
numrico. Caso o valor seja numrico, ou possa ser convertido, a funo retorna
Verdadeiro, caso contrrio, retorna Falso.
IsNumeric(NomeDaVarivel)
ou
IsNumeric(expresso)
Dim x,y,z
x=123
y = "Riachuelo - 80"
z = Date()
mensagem = "Valor de x: " & x &" numrico ? " & IsNumeric(x)& Chr(13)
mensagem = mensagem & "Valor de y: " & y &" numrico ? " & IsNumeric(y)& Chr(13)
mensagem = mensagem & "Valor de z: " & z &" numrico ? " & IsNumeric(z)
MsgBox mensagem
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Funo Cbool
A funo Cbool converte uma varivel ou resultado de um expresso, para o subtipo
Boolean. Qualquer nmero, com exceo do zero, automaticamente convertido para
Verdadeiro. O valor zero sempre convertido para Falso. O argumento desta
funo, no pode ser Texto, caso contrrio ser gerado um erro em tempo de
execuo.
Funo CByte
A funo CByte converte uma varivel ou resultado de um expresso, para o subtipo
Byte. O valor a ser convertido, deve estar na faixa aceitvel para o tipo byte,
que vai de 0 255. Caso o nmero esteja fora desta faixa, ser gerada uma
mensagem de erro, em tempo de execuo. O argumento desta funo, no pode ser
Texto, caso contrrio ser gerada uma mensagem de erro, em tempo de execuo.
Funo CCur
A funo CCur converte uma varivel ou resultado de um expresso, para o subtipo
Currency (semelhante ao formato Moeda, porm sem o smbolo do real: R$). O
argumento desta funo, no pode ser Texto, caso contrrio ser gerado um erro.
Funo CDate
A funo CDate converte uma varivel ou resultado de um expresso, para o subtipo
Date. O argumento desta funo deve estar em um formato que seja aceitvel para
datas, caso contrrio ser gerada uma mensagem de erro, em tempo de execuo.
Observe este linha de cdigo:
MsgBox CDate(31/02/1980)
Funo CDbl
A funo CDbl converte uma varivel ou resultado de um expresso, para o subtipo
Double. O tipo Doubl utilizado para nmeros grandes com casas decimais. O
argumento desta funo no pode ser do tipo texto, caso contrrio ser gerada uma
mensagem de erro, em tempo de execuo.
Observe este linha de cdigo:
MsgBox CDbl("4.940651247E-17")
Esta linha gera a mensagem indicada na Figura a seguir:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Vamos apresentar mais algumas funes do VBA, para a converso de tipos de dados.
Funo CInt
A funo CInt converte uma varivel ou resultado de um expresso, para o subtipo Integer. O
argumento desta funo no pode ser do tipo texto, caso contrrio ser gerada uma mensagem de erro,
em tempo de execuo.
A funo CLng converte uma varivel ou resultado de um expresso, para o subtipo Long. O argumento
desta funo no pode ser do tipo texto, caso contrrio ser gerada uma mensagem de erro, em tempo de
execuo. O argumento tambm no pode estar fora da faixa admitida pelo subtipo Long, caso contrrio
ser gerada uma mensagem de erro, em tempo de execuo.
Funo CSng
A funo CSng converte uma varivel ou resultado de um expresso, para o subtipo Single. O
argumento desta funo no pode ser do tipo texto, caso contrrio ser gerada uma mensagem de erro,
em tempo de execuo. O argumento tambm no pode estar fora da faixa admitida pelo subtipo Single,
Funo CStr
A funo CStr converte uma varivel ou resultado de um expresso, para o subtipo String.
Observe este linha de cdigo:
MsgBox CStr("12345" & " hectares de terra")
Funo Int
A funo Int retorna somente a parte inteira de um determinado nmero. A linha de cdigo a seguir:
Com isso, terminamos a nossa apresentao sobre as principais funes para a converso de tipos de
dados. Na prxima lio, analisaremos mais algumas funes do VBA, para operaes com dados do
tipo String e do tipo Data/Hora.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Funo Asc
A funo Asc, retorna o valor numrico do cdigo ASCII, para a primeira letra de
uma String. Considere o exemplo:
Asc(Ainda chovia)
Este exemplo de uso da funo retorna o valor 65, o qual o cdigo ASCII, para a
letra A maiscula. Caso fosse a letra "a" minscula, o cdigo retornado seria 97
e assim por diante.
Funo Chr
A funo Chr(nmero), recebe um nmero como parmetro, e retorna o caractere
ASCII, associado ao nmero passado como parmetro.
Considere o exemplo:
Chr(65)
Funo Len
Esta funo determina o tamanho da String que foi passada como parmetro para a
funo. Considere o exemplo:
Este exemplo de uso da funo, retorna 41, conforme indicado na Figura a seguir:
Funo LCase
Esta funo converte para minsculas, a String que foi passada como parmetro
para a funo. Considere o exemplo:
Funo UCase
Esta funo converte para MAISCULAS, a String que foi passada como parmetro
para a funo. Considere o exemplo:
MsgBox Lcase(este um exemplo do uso da funo ucase !!)
Funo Left
Esta funo retorna um nmero especificado de caracteres, a partir do incio
(Left Esquerda) de uma String. importante salientar que espaos em branco
tambm devem ser considerados.
Left(String, n)
onde n o nmero de caracteres a retornar.
Considere o exemplo:
MsgBox Left(Jlio Cesar Fabris Battisti,5)
Ir retornar: Jlio C
Funo Right
Esta funo retorna um nmero especificado de caracteres, a partir do final
(Right Direita) de uma String. importante salientar que espaos em branco
tambm devem ser considerados.
O formato geral da funo o seguinte:
Right(String, n)
Este exemplo de uso da funo, retorna as seis ultimas letras da String passada,
neste caso, retornar ttisti.
Vamos alterar um pouco o nosso exemplo:
Ir retornar: s Battisti
Observe que o espao em branco tambm considerado.
Funo Mid
onde:
Mid(SANTA MARIA,3,7)
, ir retornar NTA MAR. Observe que o espao em branco tambm considerado.
Um detalhe interessante, que podemos utilizar o valor retornado por uma funo,
como parmetro para outra funo. Considere o seguinte exemplo:
LCase(Mid(SANTA MARIA,3,7))
A funo Mid retira os caracteres NTA MAR, os quais so passados como parmetros
para a funo LCase, a qual converte os caracteres para minsculos.
Funo String
Esta funo retorna um determinado caractere, um nmero especificado de vezes.
String(n, Caracter)
Considere o exemplo:
MsgBox String(35,*)
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Funo Date
Retorna a data corrente do sistema. No precisamos passar parmetros para esta
funo. Considere o exemplo abaixo:
Funo Time
Retorna a hora corrente do sistema. No precisamos passar parmetros para esta
funo. Considere o exemplo abaixo:
Funo Day
Recebe como parmetro uma data, e retorna um nmero entre 1 e 31, indicando o dia
do ms. O formato geral o seguinte:
Day(data)
A funo Date() captura a data do sistema e passa como parmetro para a funo
Day, a qual por sua vez, retorna apenas o dia do ms.
Funo Month
Recebe como parmetro uma data, e retorna um nmero entre 1 e 12, indicando o ms
do ano. O formato geral o seguinte:
Month(data)
A funo Date() captura a data do sistema e passa como parmetro para a funo
Month, a qual por sua vez, retorna apenas o ms do ano
Funo Now
Retorna a hora e a data corrente do sistema. No precisamos passar parmetros
para esta funo. Considere o exemplo abaixo:
Funo MonthName
Recebe como parmetro um nmero, indicativo do ms do ano (1 Janeiro, 2
Fevereiro, e assim por diante), e um segundo parmetro que pode ser Verdadeiro ou
Falso. Se o segundo parmetro for verdadeiro, o nome do ms ser exibido
abreviadamente. O formato geral o seguinte:
MonthName(nmero_do_ms, abreviar)
A funo Date() captura a data do sistema e passa como parmetro para a funo
Month. A funo Month retorna o nmero do ms retornado pela data. Este nmero
passado como primeiro parmetro para a funo MonthName.
Funo Hour
Recebe como parmetro uma hora, e retorna um nmero entre 0 e 23, indicando o
hora do dia. O formato geral o seguinte:
Hour(horrio)
Considere o exemplo abaixo:
A funo Time() captura a hora do sistema e passa como parmetro para a funo
Hour(), a qual por sua vez, retorna apenas o hora do dia.
A funo DateDiff
Esta funo pode ser utilizada para determinar o nmero de intervalos (em dias,
trimestres, semestres, anos, etc), entre duas datas. A sintaxe desta funo o
seguinte:
O parmetro intervalo uma String que diz que tipo de intervalo vamos calcular.
Por exemplo, este parmetro que define se queremos calcular o nmero de dias,
ou o nmero de meses entre duas datas. Na Tabela a seguir, temos os valores
possveis para o parmetro intervalo.
A funo DateAdd
Esta funo pode ser utilizada para determinar uma data futura, com base em uma
data fornecida, o tipo de perodo a ser acrescentado (dias, meses, anos, etc), e
o nmero de perodos a serem acrescentados. A sintaxe desta funo o seguinte:
O parmetro intervalo uma String que diz que tipo de intervalo vamos
acrescentar. Por exemplo, este parmetro que define se queremos acrescentar um
nmero especificado de dias, meses, anos, etc. Na Tabela a seguir, temos os
valores possveis para o parmetro intervalo.
Valor Descrio
yyyy Anos
q Trimestres
m Meses
y Dias do ano (o mesmo que dias)
d Dias
w Semanas
ww Semanas do ano
h Horas
n Minutos
s Segundos
Vamos modificar um pouco o nosso exemplo, e calcular em que data teremos passado
um milho de dias aps o descobrimento.
Funo Year
Recebe como parmetro uma data, e retorna um nmero indicativo do ano. O formato
geral o seguinte:
Year(data)
A funo Date() captura a data do sistema e passa como parmetro para a funo
Year, a qual por sua vez, retorna apenas o ano.
Funo WeekDay
Recebe como parmetros uma data, e um parmetro opcional, que indica qual o
primeiro dia da semana. Se este parmetro for omitido, o primeiro dia da semana
ser considerado Domingo. O valor para o primeiro dia da semana numrico: 1
Domingo, 2 Segunda-feira, e assim por diante.
WeekDay(data, prim_dia_semana.)
Considere o exemplo abaixo:
O valor 6, indica que foi uma Sexta-feira, o que confere com o calendrio.
O valor 5, indica que foi uma Sexta-feira, pois agora a Segunda-feira passou a
ser o dia 1, a Tera-feira o dia 2, e assim por diante. Novamente confere com o
calendrio.
Funo WeekDayName
Recebe como parmetro um nmero, indicativo do dia da semana, e um segundo
parmetro que pode ser Verdadeiro ou Falso. Se o segundo parmetro for
verdadeiro, o nome do dia da semana ser exibido abreviadamente. O formato geral
o seguinte:
WeekDayName(nmero_do_dia, abreviar)
Considere o exemplo abaixo:
Funo Descrio
Abs(n) Retorna o valor absoluto (sem sinal), do
nmero n.
Atn(n) Retorna o valor do arco, cuja tangente o nmero
n. O nmero n deve ser fornecido em radianos.
Cos(n) Retorna o coseno do nmero n. O nmero n deve ser
fornecido em radianos.
Exp(n) Retorna o nmero e (logaritmo neperiano e=2,7183),
elevado no nmero n.
Log(n) Retorna o logaritmo natural de um nmero n.
Rnd(n) Retorna um nmero aleatrio entre 0 e 1.
Sgn(n) Retorna um nmero inteiro, indicando o sinal do
nmero n. Retorna 1 para nmeros negativos e 1
para nmeros positivos.
Sin(n) Retorna o seno do nmero n. O nmero n deve ser
fornecido em radianos
Sqr(n) Retorna a Raiz quadrada do nmero n.
Tan(n) Retorna a tangente do nmero n. O nmero n deve
ser fornecido em radianos.
NOTA: Para converter graus para radianos, multiplique o valor em graus por pi
(3.14), e divida o resultado por 180.
Na Tabela a seguir temos alguns exemplos de utilizao das funes matemticas do
VBA.
Abs(-2350) 2350
Atn(2) 1,1071487177
Cos(0) 1
Exp(1) 2,71828182845905
Log(1000) 6,90775527898214
Rnd*10 Gera um nmero aleatrio entre 0 e 10
Sgn(-235) Retorna 1, pois o nmero
negativo
Sin(0) Retorna 0
Sqr(400) Retorna 20
Tan(0) Retorna 0
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Bibliografia recomendada:
Confira as dicas de livros de Excel no seguinte endereo:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Este curso de autoria de Jlio Battisti, e faz parte do site www.juliobattisti.com.br. Visite o site
e confira sempre novos cursos (Excel Bsico e Avanado, Access Bsico e Avanado, PowerPoint
e muito mais), dicas de livros e sites, artigos sobre Certificaes Microsoft, simulados gratuitos
em Portugus, com respostas e comentrios, resumos para os exames MCSE e muito mais.
Clique aqui e confira.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Variveis.
Operadores.
Dados e tipos de dados.
Estruturas de deciso.
Laos de controle.
Funes internas do VBA.
Nas lies desse mdulo, veremos uma srie de objetos que fazem parte do prprio
excel. Com o uso desses objetos podemos ter acesso aos diversos elementos que
compem uma planilha do Excel. Por exemplo, voc j parou para pensar como,
dentro do cdigo VBA, podemos fazer referncia a uma clula de uma determinada
planilha? Ou, em outras palavras, como podemos declarar uma varivel x e atribuir
o valor da clula B25 varivel x?
Veremos que isso possvel com o uso dos objetos que compem o Excel. Quando
estamos programando em VBA, dentro do Excel (e mesmo atravs de outros programas,
como o Microsoft Access), temos acesso a um grande conjunto de objetos, cada
objeto com dezenas de mtodos e propriedades, os quais nos do acesso a todos os
elementos de uma planilha do Excel.
O modelo do objeto do Microsoft Excel 2000 Visual Basic for Applications inclui
muitas alteraes que foram feitas para suportar recursos novos e aprimorados no
Excel. Para proporcionar compatibilidade com verses anteriores, os componentes
substitudos foram deixados ocultos ao invs de serem removidos. Isso significa
que eles no aparecem no Pesquisador de objeto por padro, mas o cdigo antigo
que usa os componentes ocultos ainda funcionar corretamente sem modificao. Ao
gravar cdigo novo, entretanto, voc deve usar apenas novos objetos, propriedades
e mtodos.
As principais alteraes de recurso feitas no Visual Basic for Applications no
Microsoft Excel 2000 esto listadas a seguir:
ADO Activex Data Objects: um novo conjunto de objetos para acesso a fontes de
dados externas, tais como o Microsoft Access ou o SQL Server 2000. Voc pode, at
mesmo, criar uma planilha do Excel que acessa dados diretamente do Mainframe.
Fornece uma interface de acesso direto a banco de dados. O ADO agora o mtodo
de acesso de dados preferido no Excel. Nas verses anteriores utilizava-se um
outro conjunto de objetos, conhecido como DAO Data Access Objects.
Microsoft Office Web Components: Fornece uma forma de salvar planilhas, grficos
e relatrios de tabela dinmica como pginas interativas da Web. Para saber como
usar esses componentes em formulrios do usurio e em caixas de dilogo, consulte
Usar o Microsoft Office Web Components em formulrios, na Ajuda do Microsoft
Excel.
Salvar para Web e para edio com Office Web: Fornece recursos para criar pginas
da Web, salvar e editar recursos. Alm disso, fornece uma interface para salvar
Microsoft Office Web Components.
Visual Basic For Applications 6.0: Fornece os recursos de idioma mais recentes,
assim como formulrios do usurio sem modo e suporte para controles ActiveX
adicionais.
Nas demais lies desse mdulo aprenderemos a utilizar os principais objetos que
fazem parte do modelo de objetos do Excel. Com esses objetos teremos acesso a
todo e qualquer elemento de uma planilha do Excel, desde os valores em uma ou
mais clulas, at comandos de menu.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
rs.Open("Pedidos")
Uma propriedade descreve uma caracterstica do objeto. Por exemplo, temos uma
propriedade chamada RecordCount que informa quantos registros existem no objeto
RecordSet. Por exemplo, para atribuir a varivel quantos, o nmero de registros
de um objeto RecordSet chamado rs, utilizaramos o seguinte comando:
quantos = rs.RecordCount
Uma coleo um conjunto de elementos do mesmo tipo. Por exemplo, todo banco de
dados do Microsoft Access, possui uma coleo chamada Forms. Atravs desta
coleo podemos ter acesso a todos os Formulrios do banco de dados. Toda
planilha do Excel tem uma coleo chamada Worksheets. Atravs dessa coleo temos
acesso a todas as planilhas de um arquivo do Excel.
A Estrutura For...Each
A estrutura For...Each utilizada para "percorrer" todos os elementos de uma
coleo. Por exemplo, se quisermos percorrer todos os elementos da coleo Forms
de um banco de dados, exibindo o nome de cada formulrio, devemos utilizar a
estrutura For/Each, para percorrer todos os elementos da coleo Forms, exibindo
o nome de cada um dos elementos.
Nota: Quando trabalhamos com o VBA, temos que utilizar os nomes dos comandos,
objetos, funes, mtodos e propriedades em ingls. No existe traduo. Por
exemplo, se ao invs de Left, usarmos Esquerda para o nome da funo, ser gerado
um erro, informando que no existe a funo Esquerda.
Nas demais lies desse mdulo, estudaremos alguns dos principais objetos, da
Biblioteca de Objetos do Excel.
Observe que uma biblioteca de objetos forma uma espcie de hierarquia de objetos.
Por exemplo, um objeto Worksheet somente existe dentro do contexto de um objeto
Application. J o prprio objeto Worksheet pode possuir outros objetos, cada
objeto com os seus mtodos e propriedades, conforme indicado na Figura a seguir:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Para resolver estes problemas, poderamos criar uma funo ou sub-rotina que faz
os clculos de depreciao. A funo/sub-rotina seria criada dentro de um mdulo
de cdigo do VBA, na prpria planilha. Depois, em cada local onde precisamos fazer
os clculos, s chamar a funo (ou sub-rotina), para fazer os clculos. Quando
fosse necessria a alterao da metodologia de clculo, era s alterar a funo
(ou sub-rotina) e pronto, os novos clculos passaro a ser feitos com base na
nova metodologia. Isto poupa esforo, reduz o nmero de linhas de cdigo, e
facilita a manuteno, alm de reduzir a possibilidade de erros. Agora chegada a
hora de aprendermos a criar funes e sub-rotinas. Estes procedimentos/funes so
criados em mdulos de cdigo VBA associados a planilha. Quando uma destas
funes/procedimentos for necessria, basta chamar a respectiva
funo/procedimento que o Microsoft Excel se encarrega de localizar a
funo/procedimento, passar os parmetros necessrios (se for o caso) e receber os
resultados retornados, caso seja uma funo.
DICA: Quando voc criar Sub-rotinas, procure utilizar nomes que descrevam a funo
da Sub-rotina. Com isso voc torna o entendimento do cdigo mais fcil para quem
for utiliz-lo.
Considere o seguinte exemplo de declarao de uma Sub-rotina:
Neste caso, declaramos uma rotina chamada Calcula_imposto, a qual espera receber 3
parmetros: salario, desconto e extras. Os parmetros devem ser fornecidos nesta
ordem, para que a Sub-rotina funcione corretamente.
Calcula_imposto(1500,23,125)
ou
Call Calcula_imposto(1500,23,125)
Observe que os parmetros so passados dentro do parnteses.
Tambm poderamos declarar uma Sub-rotina, sem parmetros. Neste caso posso
simplesmente no utilizar os parnteses aps o nome da Sub-rotina, ou utilizar um
par de parnteses, sem nada dentro, conforme indicado abaixo:
Sub Nome_da_Sub-rotina
Comando1
Comando2
...
Comandon
End Sub
ou
Sub Nome_da_Sub-rotina( )
Comando1
Comando2
...
Comandon
End Sub
Por exemplo, poderamos criar uma Sub-rotina que exibe uma Caixa de mensagem com a
Data do sistema e a hora, no Formato indicado na Figura a seguir:
Poderamos criar todos os comandos necessrios, para exibir a hora e a data neste
formato, cada vez que a exibio fosse necessria. Porm mais prtico criar uma
Sub-rotina que faz este trabalho. Cada vez que precisarmos exibir a data e a hora
neste formato, s chamarmos a Sub-rotina.
Sub exibe_data_hora
mes_atual=Month(Date())
mes_nome=MonthName(mes_atual,False)
hora_atual = Hour(Time())
minuto_atual = Minute(Time())
secundo_atual = Second(Time())
mensagem = mensagem & "Hora atual: " & hora_atual & chr(13)
mensagem = mensagem & "Minuto atual: " & minuto_atual & chr(13)
mensagem = mensagem & "Secundo atual: " & secundo_atual
MsgBox mensagem
End Sub
Agora, cada vez que for necessrio exibir a data e a hora nos formatos do exemplo,
basta chamar a Sub-rotina exibe_data_hora, utilizando um dos seguintes comandos:
Call exibe_data_hora
ou
exibe_data_hora
Comando1
Comando2
...
Comandon
End Function
Uma Funo pode, ou no, conter argumentos. Caso sejam necessrios argumentos,
estes sero passados quando a Funo for chamada, e devem ser passados, na mesma
ordem em que foram definidos.
DICA: Quando voc criar Funo, procure utilizar nomes que descrevam os objetivos
da Funo. Com isso voc torna o entendimento do cdigo mais fcil para quem for
utiliz-lo.
Tambm poderamos declarar uma Funo, sem parmetros. Neste caso posso
simplesmente no utilizar os parnteses aps o nome da Funo, ou utilizar um par
de parnteses, sem nada dentro, conforme indicado abaixo:
Function Nome_da_Funo
Comando1
Comando2
...
Comandon
End Function
ou
Function Nome_da_Funo( )
Comando1
Comando2
...
Comandon
End Function
Por exemplo, vamos criar uma funo que converte um valor de um ngulo de Graus
para Radianos. Depois utilizaremos a funo dentro de um lao For...Next, para
exibir o valor em radianos, para os ngulos de 0 20 graus.
No exemplo a seguir temos o cdigo onde foi criada a funo CRad, que converte um
valor em graus para radianos. Depois utilizamos um lao for para exibir, atravs
de uma Caixa de mensagem os valores em radianos, para os ngulos de 0 20 graus.
Function CRad(valor_graus)
CRad = (valor_graus*3.14)/180
End Function
For i=0 to 20
mensagem = mensagem & "Angulo: " & i & "Valor em Radianos: "
mensagem = mensagem & FormatNumber(CRad(i),5)& Chr(13)
Next
MsgBox mensagem
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
O objeto Application:
Representa todo o aplicativo Microsoft Excel. O objeto Application contm:
Criar um objeto Application e usar o mtodo Open para abrir uma planilha: No
exemplo de cdigo a seguir, temos o uso do objeto Application para abrir um
arquivo do Excel que est gravado no disco rgido:
Set xl = CreateObject("Excel.Sheet")
xl.Application.Workbooks.Open "C:\ExcelAvanado\ExApp.xls"
Nesse exemplo usamos a funo CreateObject para criar um objeto do tipo
Excel.Sheet, que na prtica uma planilha do Excel:
Set xl = CreateObject("Excel.Sheet")
Em seguida usamos o mtodo Open, da coleo Workbook do objeto Application, para
acessar a planilha C:\ExcelAvanado\ExApp.xls.
Exibindo uma caixa para que o usurio selecione a planilha a ser aberta: Nesse
exemplo vamos apresentar um trecho de cdigo, o qual exibe uma janela para que o
usurio selecione o arquivo a ser aberto. Uma vez feita a seleo, a planilha
aberta, usando o mtodo Open, usado no exemplo anterior.
Set xl = CreateObject("Excel.Sheet")
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Vamos apresentar alguns exemplos simples de uso do objeto Workbook, nos quais
ilustramos o uso das seguintes propriedades do objeto Workbook:
:: Propriedade Workbooks
:: Propriedade ActiveWorkbook
:: Propriedade ThisWorkbook
:: Propriedade Workbooks
Workbooks(1).Activate
Workbooks("Teste.xls").Worksheets("Plan1").Activate
Para quem no est acostumado com o VBA, pode parecer um pouco estranha essa
sintaxe. Uma dica fazer a leitura de trs para frente, ou seja, da direita para
a esquerda. No nosso exemplo, comeando da direita para a esquerda, teramos a
seguinte leitura, do comando anterior:
Ativar (Activate) a planilha cujo nome Plan1 (Worksheets(Plan1), sendo que
esta planilha est na pasta de trabalho Teste.xls (Workbooks(Teste.xls).
A coleo Workbooks:
Uma coleo de todos os objetos Workbook que esto no momento abertos no
aplicativo Microsoft Excel.
Use a propriedade Workbooks, do objeto Application, para retornar a coleo
Workbooks. O exemplo seguinte fecha todas as pastas de trabalho abertas.
Workbooks.Close
Use o mtodo Add para criar uma nova pasta de trabalho vazia e adicion-la
coleo. O exemplo seguinte adiciona uma nova pasta de trabalho vazia ao
Microsoft Excel.
Workbooks.Add
Use o mtodo Open para abrir um arquivo. Isto cria uma nova pasta de trabalho
para o arquivo aberto. O exemplo seguinte abre o arquivo Array.xls como uma pasta
de trabalho somente leitura.
Vamos ver mais alguns exemplos de cdigo com o objeto Workbook e com a coleo
Workbooks.
Nesse exemplo tnhamos quatro pastas de trabalho abertas. O excel foi percorrendo
a coleo de pastas abertas (coleo Workbooks) e exibindo o nome da cada
elemento da coleo (cada Workbook).
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
:: Propriedade Worksheets
:: Propriedade ActiveSheet
:: Propriedade Worksheets
Worksheets(1).Visible = False
Propriedade ActiveSheet:
Quando uma planilha a planilha ativa, voc pode usar a propriedade ActiveSheet
para referir-se a ela. O exemplo seguinte usa o mtodo Activate para ativar a
planilha Plan1, define a orientao da pgina como modo paisagem e, em seguida,
imprime a planilha.
Worksheets("Plan1").Activate
ActiveSheet.PageSetup.Orientation = xlLandscape
ActiveSheet.PrintOut
A Propriedade Visible:
True se o objeto est visvel ou False caso contrrio. Essa propriedade pode ser
utilizada para verificar o valor atual ou para defini-lo . Para um grfico ou
planilha, essa propriedade pode ser definida como xlVeryHidden. Isso oculta o
objeto para que a nica maneira de voc torn-lo novamente visvel seja definindo
essa propriedade como True (o usurio no pode tornar o objeto visvel).
Comentrios:
A propriedade Visible para um item de tabela dinmica True quando o item est
atualmente visvel na tabela. Se voc definir a propriedade Visible de um nome
como False, o nome no aparecer na caixa de dilogo Definir nome.
Worksheets("Plan1").Visible = False
Este exemplo torna Plan1 visvel.
Worksheets("Plan1").Visible = True
O exemplo de cdigo a seguir torna visvel todas as planilhas da pasta de
trabalho ativa.
Propriedade UsedRange:
Essa propriedade retorna um objeto Range representando o intervalo usado na
planilha especificada. Somente leitura.
Considere o exemplo a seguir:
Este exemplo seleciona o intervalo de clulas usado (onde existem dados), na
planilha Plan1.
Worksheets("Plan1").Activate
ActiveSheet.UsedRange.Select
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
O objeto Range:
O objeto Range representa uma clula, uma linha, uma coluna, uma seleo de
clulas contendo um ou mais blocos contguos de clulas ou um intervalo 3D.
:: Propriedade Range
:: Propriedade Cells
:: Range e Cells
:: Propriedade Offset
:: Mtodo Union
Propriedade Range:
Propriedade Cells:
Use Cells(linha, coluna) onde linha o ndice da linha e coluna o ndice da
coluna, para retornar uma nica clula. O exemplo seguinte define o valor da
clula A1 como 24.
Worksheets(1).Cells(1, 1).Value = 24
ActiveSheet.Cells(2,1).Formula = "=sum(B1:B5)"
Embora voc tambm possa usar Range("A1") para retornar a clula A1, pode haver
ocasies em que a propriedade Cells seja mais conveniente porque voc pode usar
uma varivel para a linha ou coluna. O exemplo seguinte cria cabealhos de coluna
e linha na planilha Plan1. Observe que aps a planilha ser ativada, a propriedade
Cells pode ser usada sem uma declarao explcita de planilha (ela retorna uma
clula da planilha ativa).
Worksheets("Plan1").Activate
For theYear = 1 To 5
Cells(1, theYear + 1).Value = 1990 + theYear
Next theYear
For theQuarter = 1 To 4
Cells(theQuarter + 1, 1).Value = "Q" & theQuarter
Next theQuarter
Apesar de voc poder usar funes de cadeia de caracteres do VBA para alterar as
referncias de estilo A1, muito mais fcil (e uma prtica de programao
muito melhor) usar a notao Cells(1, 1).
Use expresso.Cells(linha, coluna), onde expresso uma expresso que retorne um
objeto Range, e linha e coluna so relativas ao canto superior esquerdo do
intervalo, para retornar parte de um intervalo. O exemplo seguinte define a
frmula para a clula C5.
Propriedade Offset:
Use Offset(linha, coluna), onde linha e coluna so os deslocamentos de linha e
coluna, para retornar um intervalo em um deslocamento especificado de um outro
intervalo. O exemplo seguinte seleciona a clula trs linhas abaixo e uma coluna
esquerda da clula do canto superior esquerdo da seleo atual. Voc no pode
selecionar uma clula que no esteja na planilha ativa, portanto, voc precisa
ativar primeiro a planilha.
Worksheets("Plan1").Activate
Selection.Offset(3, 1).Range("A1").Select
Mtodo Union:
Use Union(intervalo1, intervalo2, ...) para retornar intervalos de vrias reas
isto , intervalos compostos de dois ou mais blocos contguos de clulas. O
exemplo seguinte cria um objeto definido como a unio de intervalos A1:B2 e C3:D4
e, em seguida, seleciona o intervalo definido.
Este exemplo define o tamanho da fonte para a clula C5 de planilha Plan1 como 14
pontos.
Worksheets("Plan1").Cells(5, 3).Font.Size = 14
Este exemplo percorre as clulas A1:J4 da planilha Plan1. Se uma clula contiver
um valor menor que 0,001, o exemplo substituir esse valor por 0 (zero).
For rwIndex = 1 to 4
For colIndex = 1 to 10
Este exemplo varre uma coluna de dados chamada "myRange". Se uma clula tiver o
mesmo valor que a clula imediatamente acima, o exemplo exibir o endereo da
clula que contm os dados duplicados.
Set r = Range("myRange")
For n = 1 To r.Rows.Count
If r.Cells(n, 1) = r.Cells(n + 1, 1) Then
MsgBox "Dados duplicados em: " & r.Cells(n + 1, 1).Address
End If
Next n
Existem dezenas de mtodos e propriedades do objeto Range. Voc encontra exemplos
de cada mtodo e propriedade na Ajuda do Excel. No curso de Programao VBA e
Criao de Aplicativos como Excel, estudaremos mais o objeto Range.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Posio 1 2 3 4 5 6 7 8 9
Nmero 3 3 3 4 4 4 5 5 5
Posio 1 2 3 4 5 6 7 8 9
Nmero 3 3 3 4 4 4 5 5 5
Multiplica por: 10 9 8 7 6 5 4 3 2
Resultado 30 27 24 28 24 20 20 15 10
Soma1 = 30+27+24+28+24+20+20+15+10
Soma1 = 198
DV1=0
O DV1 calculado passa a fazer parte do CPF, conforme indicado pela tabela a
seguir:
Posio 1 2 3 4 5 6 7 8 9 10
Nmero 3 3 3 4 4 4 5 5 5 0
Posio 1 2 3 4 5 6 7 8 9 10
Nmero 3 3 3 4 4 4 5 5 5 0
Multiplica por: 11 10 9 8 7 6 5 4 3 2
Resultado 33 30 27 32 28 24 25 20 15 0
DV2 = 11 - 3
DV2 = 8
Com isso o CPF, j com os dois DVs fica conforme indicado na tabela a seguir:
Posio 1 2 3 4 5 6 7 8 9 10 11
Nmero 3 3 3 4 4 4 5 5 5 0 8
Ou seja: 333.444.555-08
Os algoritmos para clculo dos DVs do CNPJ so praticamente iguais. A nica
diferena a quantidade de dgitos do CNPJ diferente do CPF.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
2. Abra a planilha C:\ExcelAvancado\Nmeros de CPF.xls.
3. Selecione o comando Ferramentas -> Macro -> Editor Visual Basic...
4. Vamos criar a funo ValidaCPF de tal maneira que ele possa ser
utilizada em qualquer local da planilha. Para isso vamos cria-la como uma funo
Pblica, dentro de um mdulo do VBA.
5. Para inserir um mdulo, selecione o comando Inserir -> Mdulo. Ser
criado o Mdulo 1. Agora vamos inserir uma funo, dentro desse mdulo.
6. Selecione o comando Inserir -> Procedimento.
7. Ser aberta a janela Adicionar procedimento. Preencha os dados
conforme indicado na Figura a seguir:
8. Clique em OK.
9. Ser inserido o cdigo bsico para a criao de uma funo pblica
(que pode ser utilizada em qualquer parte da planilha), conforme indicado a
seguir:
Nota: Cada comando do VBA deve ser digitado em uma nica linha. Se voc precisa
quebrar uma linha, deve ser colocado um caractere de sublinhado no final da
linha: _
12. Digite o cdigo da listagem a seguir:
Dim d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11 As Integer
'*************************************************************************
' Os comandos a seguir desmembram o CPF um a um , atribuindo os valores *
' de d1 ... d11 , usando as funes Mid$ e Val *
' Como o CPF est no formato de Texto, vamos extrair os dgitos do CPF *
' um a um, converter o respectivo valor de texto para nmero e atribuir *
' esse valor para as variveis d1 at d11. *
'*************************************************************************
d1 = Val(Mid$(CPF, 1, 1))
d2 = Val(Mid$(CPF, 2, 1))
d3 = Val(Mid$(CPF, 3, 1))
d4 = Val(Mid$(CPF, 5, 1))
d5 = Val(Mid$(CPF, 6, 1))
d6 = Val(Mid$(CPF, 7, 1))
d7 = Val(Mid$(CPF, 9, 1))
d8 = Val(Mid$(CPF, 10, 1))
d9 = Val(Mid$(CPF, 11, 1))
d10 = Val(Mid$(CPF, 13, 1))
d11 = Val(Mid$(CPF, 14, 1))
'*************************************************************************
' A partir de agora passo a utilizar os valores anteriores para clculo *
' do dgito verificador do CPF *
'*************************************************************************
' Clculo do primeiro DV
Soma1 =((d1*10)+(d2*9)+(d3*8)+(d4*7)+(d5*6)+(d6*5)+(d7*4)+(d8*3)+(d9*2))
Resto1 = (Soma1 Mod 11)
Soma2=(d1*11)+(d2*10)+(d3*9)+(d4*8)+(d5*7)+(d6*6)+(d7*5)+(d8*4)+(d9*3)+(DV1* 2)
Resto2 = (Soma2 Mod 11)
If (Resto2 <= 1) Then
DV2 = 0
Else
DV2 = 11 - Resto2
End If
' Agora fao o teste para saber se os DVs calculados (DV1 e DV2)
' conferem com os DVs do CPF - d10 e d11
If ((DV1 <> d10) Or (DV2 <> d11)) Then
ValidaCPF = "Vlido"
End If
End If
End Function
13. Clique no boto ( ) para salvar a funo ValidaCPF.
14. Feche a janela do Editor do Visual Basic.
15. Voc estar de volta planilha Nmeros de CPF. a Prxima lio
aprenderemos a utilizar a funo ValidaCPF para verificar se os CPFs da planilha
so vlidos ou no.
16. Salve e feche a planilha.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
1. Abra o Excel.
2. Abra a planilha C:\ExcelAvancado\Nmeros de CPF.xls.
3. Clique na clula B2 e digite a seguinte frmula:
=ValidaCPF(A2)
4. Estenda essa frmula para o intervalo de A2 at A11.
5. Observe que, rapidamente, o Excel usa a funo ValidaCPF (criada na
lio anterior), para informara se o CPF vlido ou invlido, conforme indicado
na Figura a seguir:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Propriedade ThisWorkBook:
Essa propriedade retorna um objeto Workbook representando a pasta de trabalho na
qual o cdigo da macro atual est sendo executado. do tipo Somente leitura, ou
seja, essa propriedade somente pode ser usada para fazer referncia ao Workbook
atualmente carregado e no para definir o Workbook ativo.
Use essa propriedade para referir-se pasta de trabalho que contm o cdigo de
sua macro.
Por exemplo, use cdigo tal como o seguinte para ativar uma folha de caixa de
dilogo armazenada em sua pasta de trabalho do suplemento.
ThisWorkbook.DialogSheets(1).Show
Essa propriedade s pode ser usada de dentro do Microsoft Excel. Voc no pode
us-la para acessar uma pasta de trabalho a partir de um outro aplicativo, como
por exemplo o Microsoft Access.
O exemplo a seguir fecha a pasta de trabalho que contm o cdigo de exemplo.
Alteraes na pasta de trabalho, caso existam, no so salvas.
ThisWorkbook.Close SaveChanges:=False
Propriedade ActiveCell:
Essa propriedade retorna um objeto Range representando a clula ativa da janela
ativa (a janela visvel) ou da janela especificada. Se a janela no estiver
exibindo uma planilha, essa propriedade falhar. do tipo Somente leitura, ou
seja, somente pode ser usada para retornar a clula ativa e no para ativar uma
determinada clula.
Quando voc no especifica um qualificador de objeto, essa propriedade retorna a
clula ativa da janela ativa.
Tenha cuidado de distinguir entre clula ativa e seleo. A clula ativa uma
nica clula dentro da seleo atual. A seleo pode conter mais de uma clula,
ActiveCell
Application.ActiveCell
ActiveWindow.ActiveCell
Application.ActiveWindow.ActiveCell
Exemplos da propriedade ActiveCell:
Este exemplo usa uma caixa de mensagem para exibir o valor da clula ativa. Como
a propriedade ActiveCell falha se a planilha ativa no for uma planilha de
trabalho, o exemplo ativa a planilha Plan1 antes de usar a propriedade
ActiveCell.
Worksheets("Plan1").Activate
MsgBox ActiveCell.Value
Propriedade ActiveSheet:
Propriedade Calculation:
Essa propriedade Retorna ou define o modo de clculo. Pode ser uma das seguintes
constantes
xlCalculation:
xlCalculationAutomatic
xlCalculationManual
xlCalculationSemiautomatic.
Application.Calculation = xlCalculateManual
Application.CalculateBeforeSave = True
Este exemplo define o campo de dados no relatrio de tabela dinmica em Plan1
para calcular a diferena a partir do campo base, define o campo base com o campo
chamado "ORDER_DATE" e define o item base com o item chamado "5/16/89".
Worksheets("Plan1").Range("A3").PivotField.Calculation = xlDifferenceFrom
Worksheets("Plan1").Range("A3").PivotField.BaseField = "ORDER_DATE"
Worksheets("Plan1").Range("A3").PivotField .BaseItem = "5/16/89"
Na prxima lio veremos mais algumas propriedades do objeto Application e
iniciaremos o estudo dos principais mtodos desse objeto.
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Propriedade DefaultFilePath:
Essa propriedade retorna ou define o caminho padro que o Microsoft Excel usa ao
abrir arquivos. String de leitura e gravao. Por padro a pasta Meus
documentos, ou seja, quando voc seleciona o comando Arquivo -> Salvar ou Arquivo
-> Abrir, por padro, acessada a pasta Meus documentos.
Exemplo da propriedade DefaultFilePath:
Propriedade DefaultSaveFormat:
Essa propriedade retorna ou define o formato padro para salvar arquivos. Para
obter uma lista de constantes vlidas, consulte a propriedade FileFormat. Do tipo
Long de leitura e gravao. Na tabela a seguir temos uma lista de constantes
vlidas para essa propriedade:
Propriedade RecentFiles:
Essa propriedade retorna uma coleo RecentFiles representando a lista de
arquivos usados recentemente.
Application.RecentFiles.Maximum = 6
Mtodo InputBox:
Esse mtodo exibe uma caixa de dilogo para entrada pelo usurio e retorna as
informaes inseridas na caixa de dilogo.
Sintaxe:
Comentrios:
Use InputBox para exibir uma caixa de dilogo simples para que voc possa inserir
informaes a serem usadas em uma macro. A caixa de dilogo tem um boto OK e um
boto Cancelar. Quando voc escolhe o boto OK, InputBox retorna o valor inserido
na caixa de dilogo. Quando voc clica no boto Cancelar, InputBox retorna False.
Este exemplo pede ao usurio que selecione uma clula em Plan1. Este exemplo usa
o argumento Type para assegurar que o valor retornado seja uma referncia de
clula vlida (um objeto Range).
Worksheets("Plan1").Activate
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Sintaxe:
expresso.FindFile
Application.FindFile
Mtodo GetOpenFilename:
Esse mtodo exibe a caixa de dilogo Abrir padro e obtm um nome de arquivo do
usurio sem realmente abrir nenhum arquivo.
Sintaxe:
Para usar vrias expresses curingas do MS-DOS para um nico tipo de filtro,
separe as expresses curinga com pontos-e-vrgulas; por exemplo, "Arquivos do
Visual Basic (*.bas; *.txt),*.bas;*.txt".
Se omitido, o padro desse argumento ser "Todos os arquivos (*.*),*.*".
MultiSelect: Variant opcional. True para permitir que vrios nomes de arquivo
sejam selecionados. False para permitir que somente um nome de arquivo seja
selecionado. O valor padro False
Comentrios:
Mtodo SendKeys
Esse mtodo envia pressionamentos de teclas para o aplicativo ativo.
Sintaxe
expresso.SendKeys(Keys, Wait)
Wait: Variant opcional. True para que o Microsoft Excel espere que as teclas
sejam processadas antes de devolver o controle macro. False (ou omitido) para
continuar a executar a macro sem esperar que as teclas sejam processadas.
Comentrios
Este mtodo coloca os pressionamentos de teclas em uma memria intermediria de
teclas. Em alguns casos, voc precisa chamar esse mtodo antes de chamar o mtodo
que ir usar os pressionamentos de teclas. Por exemplo, para enviar uma senha
para uma caixa de dilogo voc precisa chamar o mtodo SendKeys antes de exibir a
caixa de dilogo.
Tecla Cdigo
BACKSPACE {BACKSPACE} ou {BS}
BREAK {BREAK}
CAPS LOCK {CAPSLOCK}
CLEAR {CLEAR}
DELETE ou DEL {DELETE} ou {DEL}
SETA PARA BAIXO {DOWN}
END {END}
ENTER (teclado numrico) {ENTER}
ENTER ~ (til)
ESC {ESCAPE} ou {ESC}
HELP {HELP}
HOME {HOME}
INS {INSERT}
SETA PARA ESQUERDA {LEFT}
NUM LOCK {NUMLOCK}
Voc tambm pode especificar teclas combinadas com SHIFT e/ou CTRL e/ou ALT. Para
especificar uma tecla combinada com uma outra tecla ou teclas, use a tabela
seguinte.
Application.SendKeys("%ar")
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Workbooks.Add
Uma maneira melhor de criar uma nova pasta de trabalho atribu-la a uma
varivel de objeto. No exemplo seguinte, o objeto Workbook retornado pelo mtodo
Add atribudo a uma varivel de objeto, newBook. Em seguida, vrias
propriedades de newBook so definidas. Voc pode facilmente controlar a nova
pasta de trabalho usando a varivel de objeto newBook.
Workbooks.Open("C:\MyFolder\MyBook.xls")
Referir-se a planilhas pelo nmero de ndice:
Um nmero de ndice um nmero seqencial atribudo a uma planilha, com base na
posio de sua guia de planilha (contando da esquerda para a direita) entre
planilhas do mesmo tipo. O exemplo seguinte usa a propriedade Worksheets para
ativar a planilha um da pasta de trabalho ativa.
Worksheets(1).Activate
Sheets(4).Activate
Observao A ordem dos ndices pode ser alterada se voc mover, adicionar ou
excluir planilhas.
ActiveWorkbook.SaveAs _
Filename:="C:\Reports\myfile.htm", _
FileFormat:=xlHTMLPersonalizar a pgina da Web
Nota: Esse comando deve ser digitado todo em uma nica linha. Caso voc tenha que
fazer quebra de linha, deve ser utilizado o caractere de sublinhado no final da
linha: _
Aps definir os atributos, voc pode usar o mtodo Publish para salvar a pasta de
trabalho, planilha, grfico, intervalo, tabela de consulta, relatrio de grfico
dinmico, rea de impresso ou intervalo AutoFilter de uma pgina da Web. O
exemplo seguinte define vrias propriedades de aplicativo e define a propriedade
AllowPNG da pasta de trabalho ativa, sobrescrevendo a configurao padro do
aplicativo. Finalmente, o exemplo salva o intervalo como
"C:\Reports\1998_Q1.htm."
Application.DefaultWebOptions.RelyonVML = True
Application.DefaultWebOptions.AllowPNG = True
Application.DefaultWebOptions.PixelsPerInch = 96
ActiveWorkbook.WebOptions.AllowPNG = False
PublishObjects(1).FileName = "C:\Reports\1998_Q1.htm"
PublishObjects(1).Publish
Voc tambm pode salvar os arquivos diretamente em um servidor Web. O exemplo
seguinte salva um intervalo de clulas em um servidor Web, dando pgina da Web
o endereo de URL http://example.homepage.com/annualreport.htm.
ActiveWorkbook.WebOptions
WebOptions.RelyonVML = True
WebOptions.PixelsPerInch = 96
ActiveWorkbook..PublishObjects(1)
PublishObjects(1).FileName = _
"http://example.homepage.com/annualreport.htm"
PublishObjects(1).Publish
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Propriedade Application:
Quando usada sem um qualificador de objeto, essa propriedade retorna um objeto
Application representando o aplicativo Microsoft Excel. Quando usada com um
qualificador de objeto, essa propriedade retorna um objeto Application
representando o criador do objeto especificado (voc pode usar essa propriedade
com um objeto de Automao OLE para retornar o aplicativo desse objeto). Somente
leitura.
Este exemplo exibe uma mensagem sobre o aplicativo que criou a varivel myObject.
Propriedade Count:
Retorna o nmero de objetos da coleo. Long somente leitura.
Worksheets("Sheet1").Activate
areaCount = Selection.Areas.Count
If areaCount <= 1 Then
MsgBox "A seleo contm " & Selection.Columns.Count & " colunas."
Else
For i = 1 To areaCount
MsgBox "Area " & i & " da selo contm " & _
Selection.Areas(i).Columns.Count & " colunas."
Next i
End If
Este exemplo faz do ltimo caractere da clula A1 um caractere sobrescrito.
n = Worksheets("Sheet1").Range("A1").Characters. Count
Worksheets("Sheet1").Range("A1").Characters(n, 1).Font.Superscript = True
Sintaxe:
expresso.Item(Index)
Set wb = Workbooks.Item("myaddin.xla")
Propriedade Parent:
Retorna o objeto pai do objeto especificado. Somente leitura.
Exemplo da propriedade Parent:
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Sintaxe:
expresso.Add(Template)
Workbooks.Add
Mtodo Close:
Fecha o objeto. A coleo Workbooks usa a Sintaxe 1. Os objetos Window e Workbook
usam a Sintaxe 2.
Sintaxe 1:
expresso.Close
Sintaxe 2:
Valores
True: Salva as alteraes na pasta de trabalho. Se ainda no houver um nome de
arquivo associado pasta de trabalho, FileName ser usado. Se FileName for
omitido, o usurio ser solicitado a fornecer um nome de arquivo.
False:No salva as alteraes nesse arquivo.
Valores:
True: Envia a pasta de trabalho para o prximo destinatrio.
False:No envia a pasta de trabalho.
Omitido: Exibe uma caixa de dilogo perguntando ao usurio se a pasta de trabalho
deve ser enviada.
Comentrios:
O fechamento de uma pasta de trabalho a partir do VBA no causa a execuo de
macros Auto_Fechar da pasta de trabalho. Use o mtodo RunAutoMacros para executar
as macros de fechamento automtico.
Mtodo Open:
Abre uma pasta de trabalho.
Sintaxe:
Valor Significado
0 No atualiza nenhuma referncia
1 Atualiza as referncias externas, mas no as remotas
2 Atualiza as referncias remotas, mas no as externas
3 Atualiza tanto as referncias externas quanto as remotas
ReadOnly: Variant opcional. True para abrir a pasta de trabalho em modo somente
leitura.
Valor Delimitador
1 Tabulaes
2 Vrgulas
3 Espaos
4 Ponto-e-vrgulas
5 Nada
6 Caractere personalizado (consulte o argumento Delimiter)
AddToMru: Variant opcional. True para adicionar esta pasta de trabalho lista
de arquivos usados recentemente. O valor padro False.
Comentrios:
Se a pasta de trabalho sendo aberta tiver quaisquer macros Auto_Open, estas no
sero executadas quando voc abrir o arquivo a partir do Visual Basic. Se voc
desejar executar a macro Auto_Open, voc dever usar o mtodo RunAutoMacros.
Workbooks.Open "ANALYSIS.XLS"
ActiveWorkbook.RunAutoMacros xlAutoOpen
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Um objeto Range no VBA pode ser uma nica clula ou um intervalo de clulas. Os
tpicos seguintes mostram as maneiras mais comuns de identificar e trabalhar com
objetos Range.
Workbooks("Book1").Sheets("Sheet1").Range("A1:D5").Font.Bold = True
Referncia Significado
Range("A1") Clula A1
Range("A1:B5") Clulas de A1 at B5
Range("C5:D9,G9:H16") Uma seleo de vrias reas
Range("A:A") Coluna A
Range("1:1") Linha 1
Range("A:C") Colunas de A at C
Range("1:5") Linhas 1 at 5
Range("1:1,3:3,8:8") Linhas 1, 3 e 8
Range("A:A,C:C,F:F") Colunas A, C e F
Referncia Significado
Rows(1) Linha um
Rows Todas as linhas da planilha
Columns(1) Coluna um
Columns("A") Coluna um
Columns Todas as colunas da planilha
Para trabalhar com vrias linhas ou colunas ao mesmo tempo, crie uma varivel de
objeto e use o mtodo Union, combinando vrias chamadas propriedade Rows ou
Columns. O exemplo seguinte altera para negrito o formato das linhas um, trs e
cinco na planilha um da pasta de trabalho ativa.
Worksheets("Sheet1").Activate
Dim myUnion As Range
Set myUnion = Union(Rows(1), Rows(3), Rows(5))
myUnion.Font.Bold = True
Range("MyBook.xls!MyRange").Font.Italic = True
Range("[Report.xls]Sheet1!Sales").BorderAround weight:=xlthin
Para selecionar um intervalo nomeado, use o mtodo GoTo, o qual ativa a pasta de
trabalho e a planilha e, em seguida, seleciona o intervalo.
Application.Goto Reference:="MyBook.xls!MyRange"
Selection.ClearContents
O exemplo seguinte mostra como o mesmo procedimento seria escrito para a pasta de
trabalho ativa.
Application.Goto Reference:="MyRange"
Selection.ClearContents
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Observao: Voc pode gravar macros que usem a propriedade Offset em vez de
referncias absolutas. No menu Ferramentas, aponte para Gravar macro e, em
seguida, clique em Usar referncias relativas.
Para fazer um loop atravs de um intervalo de clulas, use uma varivel com a
propriedade Cells em um loop. O exemplo seguinte preenche as 20 primeiras clulas
da terceira coluna com valores entre 5 e 100, incrementados por 5. A varivel
counter usada como ndice de linha para a propriedade Cells.
Dim counter As Integer
For counter = 1 To 20
Worksheets("Sheet1").Cells(counter, 3).Value = counter * 5
Next counter
Worksheets("Sheet1").Range("C5:D9,G9:H16,B14:D18").ClearContents
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
For counter = 1 To 20
Set curCell = Worksheets("Sheet1").Cells(counter, 3)
If Abs(curCell.Value) < 0.01 Then curCell.Value = 0
Next counter
Uma outra maneira mais fcil de se fazer um loop atravs de um intervalo usar
um loop For Each...Next (descrito no Mdulo 5) com a coleo de clulas retornada
pelo mtodo Range. O VBA define automaticamente uma varivel de objeto para a
prxima clula cada vez que o loop executado. O seguinte exemplo faz um loop
atravs do intervalo A1:D10, definindo como 0 (zero) qualquer nmero cujo valor
absoluto seja menor que 0,01.
Por exemplo, se voc desejar inserir uma frmula na clula D6 usando o Visual
Basic, voc no ter que selecionar o intervalo D6. Voc precisa apenas retornar
o objeto Range e, em seguida, definir a propriedade Formula com a frmula
desejada, conforme mostrado no exemplo seguinte.
Worksheets("Sheet1").Range("D6").Formula = "=SUM(D2:D5)"
Usar o mtodo Select e a propriedade Selection:
trabalho ativa. Antes de voc poder usar com xito a propriedade Selection, voc
precisa ativar uma pasta de trabalho, ativar ou selecionar uma planilha e, em
seguida, selecionar um intervalo (ou outro objeto) usando o mtodo Select.
O gravador de macro costuma criar macros que usam o mtodo Select e a propriedade
Selection. O exemplo seguinte foi criado pelo uso do gravador de macro, e ilustra
como Select e Selection funcionam juntas.
Sheets("Sheet1").Select
Range("A1").Select
ActiveCell.FormulaR1C1 = "Name"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Address"
Range("A1:B1").Select
Selection.Font.Bold = True
O exemplo seguinte realiza a mesma tarefa sem ativar nem selecionar a planilha ou
as clulas.
Worksheets("Sheet1").Range("A1") = "Name"
Worksheets("Sheet1").Range("B1") = "Address"
Worksheets("Sheet1").Range("A1:B1").Font.Bold = True
Worksheets("Sheet1").Rows(1).Copy
Worksheets("Sheet2").Select
Worksheets("Sheet2").Rows(1).Select
Worksheets("Sheet2").Paste
Worksheets("Sheet1").Activate
Range("A1:D4").Select
Range("B2").Activate
Worksheets("Sheet1").Activate
ActiveCell.Value = 35
Observao: Voc s pode trabalhar com a clula ativa quando a planilha na qual
ela se encontra a planilha ativa.
Mover a clula ativa:
Voc pode usar o mtodo Activate para designar qual clula a clula ativa. Por
exemplo, o exemplo seguinte torna B5 a clula ativa e, em seguida, a formata com
negrito.
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("B5").Activate
ActiveCell.Font.Bold = True
Worksheets("Sheet1").Activate
Range("A1:D10").Select
ActiveCell.Value = "Monthly Totals"
ActiveCell.Offset(0, 1).Activate
Worksheets("Sheet1").Activate
ActiveCell.CurrentRegion.Select
Selection.Style = "Currency"
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico
Bibliografia recomendada:
Confira as dicas de livros de Excel no seguinte endereo:
http://www.juliobattisti.com.br/livrosdeexcel.asp
Capa do CURSO Sobre o autor: Jlio Battisti Pgina Principal Curso de Excel Bsico