Você está na página 1de 49

Excel avanado - VBA

Tcnicas profissionais de uso dos poderosos recursos do excel !

STYLLUS
Escola de qualificao profissional

Formatao de planilhas Grficos Validao de dados Filtragem de dados Frmulas avanadas Automatizao de tarefas usando Macros Programao em VBA E muito mais...

DEIVIS FONTES

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 1 - Formatao e grficos


Conhecendo o ambiente de trabalho do Excel
Partindo do principio que o leitor deste livro j deve ter um conhecimento bsico do Microsoft Office Excel, a verso utilizada ser o Office 2003, mas os conhecimentos adquiridos podem ser usados em outras verses com algumas adaptaes. Para acessar o Excel: clique no menu Iniciar >> Programas( ou todos os programas) >> Microsoft Office 2003 >> Microsoft Office Excel 2003, lembrando que isso pode variar conforme a verso do programa. rea de trabalho do Excel

Clula

Vejamos agora as partes da rea de trabalho do Excel: Pasta de trabalho: Barra de Menu: Menus para acessar as opes e recursos do programa, como salvar, formatar, abrir, etc... Barra de ferramentas: Um atalho para as opes mais usadas, como Novo, Abrir, Salvar, etc... Barra de formatao: aqui esto as principais ferramentas para formatao da planilha de clculos. Colunas: O Excel divide a sua rea de trabalho Verticalmente em colunas, contando com letras, no total so 256 colunas. Linhas: A rea de trabalho tambm dividida em linhas no sentido Horizontal, usando nmeros para contagem, no total so 65.536 linhas. Clulas: Uma clula o encontro de uma coluna com uma linha, ou seja, os quadrinhos da planilha.

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Formatando as clulas
Para formatar as clulas de uma planilha o caminho mais fcil usar os atalhos da barra de formatao, onde possvel alterar letra, cor de fundo e bordas.

Para ter mais opes de formatao acesse o menu Formatar >> Clulas , ou as teclas de atalho Ctrl + 1.

Vejamos as opes desta janela: Nmero: Permite definir um formato para o valor da clula, como por exemplo, datas por extenso, o usurio pode digitar a data neste formato: 01/01/1980 e quando sair da clula vai ficar a data por extenso: Segunda-feira, 01 de janeiro de 1980.

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Alinhamento: Para mostrar o texto em duas linhas dentro de uma clula, necessrio formatar esta para que quebre o texto automaticamente. Siga os passos: 1. Digite um texto em uma clula que ultrapasse o seu limite na coluna, mas observe que o texto mesmo passando por cima da clula do lado continua na clula em que foi digitado, selecione esta clula. 2. Clique no menu: Formatar >> Clulas... 3. Na janela que abrir escolha a guia Alinhamento 4. Em Alinhamento do texto escolha: a. Horizontal: Centro b. Vertical: Centro 5. Em Controle de texto marque a caixa de seleo: Quebrar texto automaticamente 6. Clique no boto OK

Orientao: Podemos definir o texto na vertical, horizontal ou em diagonal, alterando os valores da caixa de seleo Graus.

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Bordas: Nesta opo podemos escolher o estilo da linha, cor, em que parte da clula a borda deve aparecer e as predefinies do contorno.

Padres: Preenchimento da clula pode ser uma cor ou um padro de textura, para escolher um padro clique na caixa de seleo Padro e escolha um dos padres disponveis.

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Proteo: Esta opo funciona apenas se a planilha estiver protegida com uma senha o que veremos mais adiante

Ocultar linhas ou colunas


Em muitas situaes pode ser necessrio ocultar uma linha ou coluna, por exemplo, em uma planilha de produtos na clula A1 inserimos o percentual de ICMS, para ter mais espao visvel na tela podemos ocultar a linha 1 onde encontra-se o valor do ICMS. Para isso clique no menu Formatar >> Linha >> Ocultar, siga o mesmo procedimento para as colunas escolhendo Coluna no menu Formatar

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Mostrar linhas ou colunas


Para reexibir colunas ou linhas ocultas digite uma clula da linha ou coluna desejada na caixa de nome e clique no menu Formatar >> Linha >> Reexibir.

Formatao condicional
Formatao condicional um recurso que permite definir a formatao de uma clula de acordo com o seu contedo, por exemplo, se o total de ganhos de uma empresa for maior que zero a clula vai ficar com o preenchimento azul e caso contrrio ficar vermelho. Para usar este recurso siga os passos: 1. Selecione a clula desejada 2. Clique no menu Formatar >> formatao Condicional... 3. Na janela que abrir escolha o valor da clula 4. Ao lado escolha a condio do valor, este caso Menor ou igual a 5. No prximo campo digite o valor que ir fazer a comparao no nosso exemplo 0 (zero) 6. Clique no boto formatar...

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

7. E na janela que surgir clique na guia padres para escolher a cor do preenchimento

8. Agora falta adicionar a segunda condio que se o valor for maior ou igual a zero, para isso basta clicar no boto Adicionar >> e seguir os mesmos passos mostrados anteriormente.

Para excluir uma ou mais formataes clique no boto excluir e escolha qual condio deseja excluir.

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Casas Decimais
Muitas vezes ao realizar um clculo de multiplicao ou diviso o resultado pode conter muitas casas decimais, tornando seu resultado um pouco confuso, para resolver isso definiremos a quantidade de casas decimais de uma clula usando os botes da barra de formatao. Para acrescentar casas decimais a um nmero clique no boto:

Grficos
Para mostrar as informaes da planilha em forma de grficos siga os passos: 1. Selecione o intervalo de clulas que ser usado para exibir as informaes no grfico, para selecionar colunas aleatrias pressione a tecla Ctrl enquanto seleciona as clulas desejadas (ex.: clulas da coluna A e da coluna C) 2. Clique no menu Inserir >> Grfico 3. Siga os passos do assistente de grficos

10

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

11

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Alterando Grficos
Para alterar as partes do grfico clique com o boto direito do mouse na seo do grfico que voc deseja alterar e escolha a opo desejada, no exemplo abaixo Formatar srie de dados, para alterar as colunas de dados.

12

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 2 Trabalhando com dados


Importando dados de outros programas
Com o Excel possvel importar dados de outro programa ou banco de um banco de dados este recurso pode ser muito til para obter cadastros de clientes de uma empresa que usa o banco de dados Access, onde esto cadastrados os clientes desta empresa. Para importar os dados clique no menu Dados >> Importar dados externos >> Importar dados

Procure pela pasta onde o banco de dados esta salvo

13

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Escolha o Tipo de arquivo, caso no saiba escolha os tipos disponveis at que seja mostrado algum arquivo na pasta onde esta seu banco de dados

Clique no boto Abrir e ser mostrada as tabelas do banco de dados, escolha uma tabela e clique em OK

Agora voc pode escolher onde deseja inserir estes dados: na mesma planiha ou em uma nova planilha

14

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Validao de dados
Quando desenvolvemos uma planilha interessante validar os dados antes que sejam inseridos na planilha, para evitar erros como datas fora do perodo pr-determinado, definir uma quantidade mxima de caracteres em uma clula e muitas outras opes. Para acessar este recurso do Excel: 1. Clique no Menu Dados >> Validao... 2. As Guias disponveis so: a. Configuraes: Configurar o que e como ser validado o valor b. Mensagem de Entrada: Exibe uma mensagem quando o usurio entrar em uma clula com validao de dados c. Alerta de Erro: Exibe uma mensagem quando o valor inserido no vlido

Opes de Configuraes
Veja as opes de configurao dos dados, na caixa de opes Permitir

Opes disponveis: Qualquer valor: Permite inserir qualquer valor. Nmero inteiro: Apenas nmeros inteiros Decimal: Apenas nmeros decimais (0 9) Lista: Permite escolher os valores de um grupo de clulas na planilha para inserir em uma clula Data: Valida datas Hora: Valida Horas Comprimento de texto: Permite definir a quantidade de caracteres que uma clula pode conter. Personalizado: Permite escolher uma frmula para validar os dados, no permitindo que esta frmula seja alterada.

15

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Validao de dados na prtica


Abra o Excel e crie uma planilha com as colunas: A. Produto B. Quant. C. Data D. Valor E. Total Preencha com os valores abaixo.

Nmero Inteiro
Vamos validar as clulas referentes a quantidade (B2 e B3), esta planilha controla um pequeno estoque de produtos de informtica, as clulas referentes quantidade podem ser do tipo inteiro, j que no existe 1,5 mouse, para validar estes dados selecione as clulas B2 e B3 e abra a janela de validao (Dados >> Validao...).

1. 2. 3. 4.

Configuraes Permitir: Nmero Inteiro Dados: Maior ou igual a Mnimo: 0 (zero)

Obs.: Para no permitir valores em branco desmarque a caixa de seleo Ignorar em branco

16

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Mensagem de entrada
Para mostrar uma mensagem quando o usurio clicar na clula com validao escolha a guia Mensagem de entrada e marque a caixa de seleo: Mostrar mensagem de entrada ao selecionar a clula. Defina como Ttulo: Quantidade e a Mensagem de entrada digite: Insira a quantidade do produto em nmeros inteiros.

Alerta de erro
Esta opo mostra uma mensagem quando o valor inserido no vlido 1. Escolha um estilo neste caso Parar 2. Ttulo: Valor invlido 3. Mensagem de erro: A quantidade do produto deve ser um nmero inteiro como 1, 2, 20...

17

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Estilos da mensagem de erro:


A opo Estilo permite alterar o cone e os botes da mensagem de erro, os estilos disponveis so: Parar, Aviso e Informaes, cada um deles mostra diferentes opes quando o valor inserido no vlido. Veja as opes, ao inserir uma letra na clula referente quantidade. 1. Parar: Ao clicar no boto repetir o usurio pode digitar o valor correto novamente e o boto cancelar permite manter o valor que estava antes.

2. Aviso: Mostra um aviso perguntando se o usurio deseja continuar (Sim / No) ou cancelar, caso escolha Sim ser ignorada a validao e o valor poder ser inserido mesmo que no seja vlido.

3. Informaes: Ao Clicar no boto OK a validao ignorada e o valor pode ser inserido mesmo que seja invlido.

18

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Validar a data
Selecione as clulas referentes a data e na janela de validao em Configuraes escolha Permitir >> Data.

Dados: Escolha a data de nicio e Trmino, os valores podem ser uma clula da planilha permitindo maior flexibilidade para alterar as datas futuramente.

Configure as mensagens de entrada e de Erro, conforme suas preferncias.

19

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Filtros
Em planilhas com muito contedo fica difcil separar as informaes por grupos, para resolver o Excel permite filtrar as informaes da planilha permitindo que sejam visualizadas apenas as clulas referentes ao critrio usado no filtro tornando assim mais fcil a consulta aos dados da planilha. Para usar o filtro selecione a clula desejada e clique no menu Dados >> Filtrar >> Auto filtro, note que esta opo do menu ativa o filtro para desativar siga os mesmos passos desmarcando o auto filtro do menu.

Escolha a opo Personalizar:

Defina os parmetros do filtro personalizado Dica: Se quiser resetar o filtro clique no menu: Dados >> Filtrar e desmarque a opo Auto Filtro.

20

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 3 Protegendo e Compartilhando pastas de trabalho


Proteo de planilhas
O Excel permite proteger as planilhas com senha, evitando assim que uma pessoa no autorizada altere os valores ou modifique suas frmulas, este recurso muito til em empresas onde algumas informaes devem ser protegidas. Veja como proteger uma planilha: 1. Abra uma planilha que voc deseja proteger com senha. 2. Clique no Menu: Ferramentas >> Proteger >> Proteger Planilha... 3. Na janela que surgir digite uma senha e escolha o que voc deseja permitir marcando as caixas de seleo referentes ao recurso selecionado. 4. Repita sua senha

Ao tentar editar qualquer clula ser exibida uma mensagem de erro.

21

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Para desbloquear basta acessar o menu Ferramentas >> Proteger >> Desproteger Planilha... e digitar a senha.

Para permitir a edio de determinadas clulas mesmo com a planilha protegida por senha, selecione as clulas que voc deseja permitir a edio e clique no menu Formatar >> Clulas escolha a guia Proteo e desmarque a caixa de seleo Bloqueadas isso permite que as clulas selecionas possam ser editadas enquanto o resto da planilha fica protegida.

22

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Compartilhando Planilhas na rede


Antes de compartilhar uma planilha na rede voc deve criar uma pasta compartilhada para salvar sua planilha neste local, para criar uma pasta compartilhada siga os passos abaixo: Clique com o boto direito do mouse na pasta que voc deseja compartilhar e escolha a opo Compartilhamento e segurana ...

Na janela que surgir marque a caixa de seleo Compartilhar esta pasta na rede e Permitir que os usurios da rede alterem meus arquivos, clique em OK para aplicar as alteraes. Quando mais de um usurio abrir a mesma planilha o segundo usurio receber uma mensagem de erro informando que uma planilha j esta aberta e esta cpia ser aberta apenas como leitura.

23

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Permitindo que mais de um usurio trabalhe na mesma planilha


Para permitir que mais de um usurio abra a mesma planilha, salve a planilha desejada e clique no menu Ferramentas >> Compartilhar pasta de trabalho...

Na guia avanadas configure como na imagem abaixo:

Assim a planilha ser salva e atualizada a cada 5 minutos.

24

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 4 - Frmulas
Frmulas do Excel
possvel fazer clculos matemticos com o Excel por meio de Frmulas, baseadas no contedo de uma ou mais clulas ou em valores previamente determinados na frmula. Antes de comear a fazer uma frmulas leve em considerao que:

Toda frmula inicia com o sinal = (igual) Para calcular valores do contedo entre duas clulas use : (dois pontos) Para calcular valores aleatrios entre clulas separes as clulas com ; (ponto e virgula) As referncias dos exemplos como =A1+A2, so apenas ilustrativas perceba que A1 deve ser alterado para a clula correspondente ao valor que deseja calcular. Por exemplo, se na clula B2 tem o valor gasto com telefone e na clula C2 Tem o valor gasto com gua ento a frmula ficaria assim: =B2+C2, para exibir os gastos com gua e telefone.

Operaes bsicas:
Operao Adio Subtrao Multiplicao Diviso Somar valores entre vrias clulas Frmula =A1+A2 =A1-A2 =A1*A2 =A1/A2 =SOMA(A1:A10) Observaes Soma o valor da clula A1 + A2 Subtrai o valor da clula A1 + A2 Multiplica o valor da clula A1 + A2 Divide o valor da clula A1 + A2 Esta frmula soma todos os valores que esto entre as clulas A1 e A10.

Clculos estatsticos
Operao Mdia entre seqncia de valores Mdia com dois ou mais valores Maior valor Menor valor Contar clulas Frmula =MEDIA(A1:A10) Observaes Calcula a mdia entre as clulas A1 e A10 =MEDIA(A1:A10;A15) Calcula a mdia com as clulas A1, A10, A15 =MAXIMO(A1:A10) Pode usar o sinal ; (ponto e Vrgula) para calcular valores selecionados =MINIMO(A1:A10) Pode usar o sinal ; (ponto e Vrgula) para calcular valores selecionados =CONT.NM(A1:A10) Funciona apenas com valores numricos.

Obs.: o sinal : (dois pontos) calcula os valores que esto entre uma clula inicial e outra final, no entanto o sinal ; (ponto e Vrgula) calcula apenas os valores escolhidos que esto entre o sinal ; (ponto e Vrgula). 25

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Outras frmulas
Nome Raiz Quadrada Potncia Frmula =Raiz(A1) =A1^2 Observaes O nmero 2 indica o grau de exponnciao se quiser calcular ao cubo use 3

Data e hora
Frmula =HOJE() =AGORA() Observaes Mostra a data atual de acordo com o relgio do sistema Subtrai o valor da clula A1 + A2

Operadores
Soma + Subtrao Multiplicao * Diviso / Diferente de <> Maior > Menor < Potncia ^

Nomes das clulas


Em planilhas mais complexas, recomendvel nomear as clulas que sero usadas para calcular os resultados, para nomear as clulas: 1. Selecione as clulas que sero nomeadas 2. Clique no menu Inserir >> Nome >> Definir ...

26

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Digite o nome para as clulas

Clique na caixa de texto Refere-se a: e selecione as clulas que deseja nomear

Clique no boto Adicionar e depois em OK. Para Calcular basta usar o nome da clula como, por exemplo, a clula A1 tem Quantidade de um produto e a clula B1 tem o valor de venda deste produto e esto nomeadas assim: A1 Qnt B1 ValorCompra Para saber o total use a frmula: =Qnt * ValorCompra

27

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Frmula condicional no Excel


O Excel permite o uso de frmulas condicionais, possibilitando o preenchimento automtico de uma clula, de acordo com o valor de outra clula relacionada, como por exemplo, as mdias de um aluno, se o valor da clula correspondente a mdia for maior ou igual a 7 o resultado ser Aprovado e caso contrrio Reprovado, evitando assim que o usurio tenha que comparar as mdias e digitar manualmente a situao do aluno.

Lgica da frmula:
Veja o exemplo na planilha, onde temos a clula A1 com o nmero 1 e na clula do lado usamos uma frmula que se o valor da clula A1 for igual a 1 ser exibido Um e caso contrrio no ser mostrado nada.

Acompanhe o seguinte raciocnio: Frmula: =SE(A1=1;"Um";" ") Analisando: Se A1 for igual a 1 ento Um caso contrrio em branco Observaes

Primeiro indicamos o tipo de frmula, =SE(teste lgico) Depois a condio A1=1 O Ponto-e-vrgula separa a condio do resultado Caso o valor da clula A1 for igual a 1, temos ento o primeiro resultado Um E caso contrrio fica em branco Os resultados devem ser separados por Aspas "

Clculo de mdia escolar: =SE(A1>=7;"Aprovado";"Reprovado") Se o valor da clula A1 for maior ou igual a 7 ento Aprovado, caso contrrio Reprovado

28

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Condio com Texto


At agora vimos frmulas envolvendo clulas com nmeros, mas podemos usar tambm usar clulas que contenham palavras, veja o exemplo: =SE(A3="deivis";"Fontes";"Outro Nome") Neste caso necessrio colocar a condio entre Aspas "deivis".

Usando mais de uma condio


Em uma planilha para controle de funcionrios por setores de uma empresa temos uma clula com o nome do funcionrio outra com o cdigo do cargo e outra que mostra o setor em que o funcionrio trabalha.

veja a frmula: =SE(B3=1;"Desenvolvimento";SE(B3=2;"Direo";SE(B3=3;"Outros"))) Agora basta adaptar conforme suas necessidades, lembrando que no final devem ser acrescentadas a quantidade de parnteses para fechar a frmula de acordo com os que foram abertos na frmula.

Concatenar
Concatenar para o Excel significa juntar clulas umas as outras ou clulas com um texto predefinido, como por exemplo, em uma planilha onde temos em uma clula nome e em outra o endereo usamos a seguinte frmula para juntar o nome e o endereo: =CONCATENAR(A2;B2)

29

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Para usar um texto pr-determinado, coloque o texto entre aspas como no exemplo: =CONCATENAR(A2;Seu texto)

Outra forma de concatenar usar o caractere & entre uma clula e outra. Ex.: =A1&B1 Para inserir espao, palavra ou nmero no resultado use as aspas =A1&texto&B1

Vinculo com clula de outra planilha


possvel vincular dados das clulas de outra planilha, para que quando o valor for alterado na planilha de origem a que recebe o vinculo atualiza os valores automaticamente, por exemplo, digite um valor na clula A1 em Plan2 e na clula A2 da Plan1 digite a seguinte frmula: =Plan2!A1.

Deixar apenas a primeira letra Maiscula


Durante o uso de planilhas, muitos usurios esquecem a tecla Caps Loock ativada assim tudo que for digitado fica em maisculo, isso ocupa um espao maior nas colunas da planilha e em alguns casos a deixa com uma aparncia feia, para corrigir isso, na clula que voc deseja mostrar com a primeira letra maiscula, use a seguinte frmula: Onde A1 deve ser substituda pela clula que contem o valor a ser corrigido. =PRI.MAIUSCULA(A1)

30

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Procura automtica
Em muitos casos pode ser til que o Excel preencha automaticamente os dados a aprtir de uma referncia, como, por exemplo uma planilha de vendas onde temos uma planilha com os produtos e outra com as vendas, para evitar erros podemos usar a frmula PROCV que preenche automaticamente os valores de acordo com o cdigo do produto. Para entender melhor vamos prtica: Crie uma planilha como mostra a imagem abaixo:

Renomeie a Plan2 como Oramento Preencha com os dados da imagem abaixo:

31

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Na clula A1 o usurio deve digitar o cdigo do produto e nas clulas B2 e C2 deve aparecer automaticamente a descrio do produto e o seu valor. Para isso use a frmula: =PROCV(A2;Produtos!A2:C10;2) Que traduzindo teremos =PROCV(clula onde o valor deve ser procurado;Intervalo onde procurar;Nmero correspondente coluna cujo valor deve ser exibido) Vamos analisar cada parte desta frmula: =PROCV: este o nome da frmula que deve ser seguido do parntese A2: a clula onde digitaremos o cdigo do produto, ou seja, o que a frmula deve procurar. Produtos!A2:A10: o intervalo de clulas no qual o valor digitado em A2 deve ser procurado, neste caso este valor est entre as clulas A2 e A10 da planilha Produtos 2: este o nmero que indica em qual coluna dever ser pego o valor a ser exibido, no caso da coluna C seria 3, coluna D 4 e assim por diante. Os sinais de ponto e vrgula separam as partes da frmula.

32

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 5 Tabelas dinmicas


Criando Tabelas dinmicas
Tabelas dinmicas um recurso do Excel que permite organizar os dados em planilhas muito extensas, permitindo acesso rpido e fcil aos dados que voc precisa. Veja como criar uma tabela dinmica: Abra uma planilha com muitos dados e clique no menu Dados >> Relatrio de tabela e grfico dinmico...

Escolha as opes : Banco de dados ou lista do microsoft office excel Tabela dinmica

Clique em avanar 33

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Selecione as clulas que sero usadas e escolha avanar >

Escolha onde voc quer inserir o0 relatrio de tabela dinmica

Clique em concluir Arraste os itens para as partes do relatrio que voc preferir

34

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 6 Macros
O Excel permite automatizar algumas tarefas com o uso de macros, que podem ser gravadas automaticamente ou escritas usando alguns comandos da linguagem Visual Basic baseada na linguagem Basic desenvolvida pela Microsoft. Para gravar macros siga os passos: Abra uma planilha e clique no menu Ferramentas >> Macro >> Gravar nova Macro...

Digite um nome para esta macro, caso deseje pode definir um atalho de teclado para a macro pressionando a tecla Ctrl, tambm possel escolher um local para salvar esta macro. Clique em OK para iniciar a gravao.

35

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Selecione algumas clulas e mescle, isso ser a ao desta macro poderia ser outra ao qualquer, como imprimir uma planilha.

Para parar a gravao clique no boto Parar Gravao

Para ver as macros que foram criadas Clique em Ferramentas >> Macro >> Macros, ou pressione Alt + F8

36

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Para executar uma macro clique na macro e em seguida clique no boto executar

Editando Macros
Pressione Alt + F8 e clique na macro que deseja editar e clique no boto Editar. Ser aberto o editor de macros, onde voc poder usar comandos da linguagem visual basic para alterar suas macros, mas isso veremos no prximo capitulo sobre VBA a linguagem de programao do Excel.

37

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Editando uma macro


Veja a seguir o exemplo de uma macro que seleciona as clulas A1 at D1 Sub Macro1() Range("A1:D1").Select End Sub A linha Range("A1:D1").Select refere-se ao intervalo de clulas A1 at D1, para alterar este intervalo basta trocar os valores A1:D1, se desejar selecionar clulas fora de uma seqncia use a vrgula. Sub Macro1() Range("A1,A3,A5").Select End Sub

Segurana
Ao abrir uma planilha que contm macros em outro computador ou at mesmo no prprio computador onde a planilha foi elaborada pode acontecer do Excel bloquear as macros, sendo necessrio alterar algumas configuraes de segurana do Excel. Isso foi implantado na verso 2003 do Office para evitar os vrus de macro que desconfiguravam os aplicativos do pacote Office. Com a planilha aberta clique no menu Ferramentas >> Macro >> Segurana...

38

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Deixe os nveis de segurana como Baixo assim suas macros podero ser executadas sem problemas, se preferir altere o nvel de segurana para Alto ou Muito alto depois.

Alternando entre as planilhas Vamos criar uma macro simples que alterna entre as planilhas, apenas clicando em botes, para isso precisamos da barra de ferramentas de caixa de controle, que por padro no exibida no Excel, para exibir esta barra clique no menu Exibir >> Barras de ferramentas e marque a opo Caixa de ferram. De controle.

39

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Escolha o item Boto de comando e desenhe um boto na planilha

Clique com o boto direito do mouse neste Boto de controle e escolha Propriedades.

Altere as seguintes opes: Name Nome do boto usado pelo Excel, no pode conter espaos e use um nome sugestivo como BtnPlanilha2. Caption Texto que aparece no boto Mouse Icon cursor do mouse que vai aparecer para este boto Dica: Voc pode alterar as outras opes para descobrir o que cada uma faz !

40

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Feitas as devidas alteraes na aparncia deste boto vamos agora inserir os comandos para que quando este boto for clicado passe para a planilha 2, para isso clique com o boto direito do mouse neste boto e escolha Exibir cdigo.

No editor do VBA insira o cdigo entre Private Sub CommandButton1_Click() e End Sub Worksheets(2).Activate Deve ficar assim: Private Sub CommandButton1_Click() Worksheets(2).Activate End Sub Volte para a planilha do Excel e clique no boto para ver o resultado, talvez seja necessrio sair do modo Design clicando na opo da caixa de ferramentas de controle.

41

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 7 Programao em VBA


VBA
VBA a sigla para Visual Basic for Applications, um ambiente de programao voltado para os programas da famlia Office, usando como base a linguagem Visual Basic, criada pela Microsoft. Para acessar o ambiente de programao do VBA, primeiro abra o Excel, depois v no menu Ferramentas >> Macros >> Editor do Visual Basic ou pelo atalho de teclado Alt + F11.

42

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Itens rea de trabalho do VBA:


1. Project Explorer - onde voc pode ver todos componentes do seu projeto como planilhas plan1, plan2, etc. 2. Janela de Propriedades - Janela onde voc pode ver e alterar as propriedades dos componentes do projeto, por exemplo, a propriedade Name altera o nome de um componente. 3. Formulrio - Tela do programa onde podemos colocar botes, caixas de texto, etc. 4. Caixa de ferramentas - Local onde encontramos os controles necessrios para o projeto como botes, caixas de texto, etc. Para alterar as propriedades de um componente voc deve primeiro selecion-lo, bastando para isso clicar sobre o objeto desejado e Pressionar F4 caso a janela de propriedades no estiver aparecendo. Algumas propriedades comuns:

Name - Nome usado para orientar o programador na hora de escrever o cdigo Caption - Ttulo que aparece no componente, comum em componentes tipo boto e formulrio Text - Exibe o texto definido nesta propriedade em uma caixa de texto Font - Define o tipo de fonte (letra) a ser utilizada Visible - Visibilidade do componente, True(verdadeiro) ou False(falso) Enabled - Define se o componente est habilitado, True(verdadeiro) ou desabilitado False(falso) Estas so apenas algumas propriedades de uso geral, pois as propriedades podem variar conforme o componente e a situao.

Executando uma aplicao


Para executar sua aplicao pressione F5 ou clique no boto Executar da barra de ferramentas, para parar clique no boto Redefinir ou feche sua aplicao

Mdulos
Os mdulos so as macros criadas e podem ser atribudos a um ou mais componentes da planilha economizando assim linhas de cdigo repetidas.

Formulrios
Formulrios so janelas que podem ser usadas para diversas funes dentro de uma planilha, dentro de um formulrio podemos inserir os controles como botes, caixas de texto, etc. Para inserir um formulrio clique no menu Inserir >> User Form, note que tambm possvel inserir mdulos a partir desse menu:

43

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Controles comuns
Vamos criar um aplicativo de exemplo onde o usurio deve digitar seu nome em uma caixa de texto e clicar em um boto para mostrar seu nome em um rtulo. No editor do VBA insira um formulrio e neste formulrio coloque os seguintes componentes: 1 Rtulo 1 Caixa de texto 2 Botes

Altere as propriedades: Rotulo: Caption: em branco Caixa de Texto: Name TxtNome Text: em branco CommandButton1: Caption: OK CommandButton2 Caption: Sair Vamos agora ao cdigo D um duplo clique no boto OK e insira o cdigo que vai mostrar seu nome no rtulo para isso usaremos as propriedades do rtulo e da caixa de texto: Private Sub CommandButton1_Click() Label1.Caption = TxtNome.Text End Sub Onde: Label1.Caption - o rtulo com a propriedade Caption onde mostra o texto neste rtulo TxtNome.Text a caixa de texto com a propriedade Text que ser mostrada no rtulo No cdigo do boto OK digite End, isso fecha o formulrio Para chamar esse formulrio atravs de um boto de comando use o cdigo: UserForm1.Show Onde UserForm1 o nome do formulrio, definido na propriedade Name

44

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Comentando o cdigo
Comentrios ajudam a entender melhor o cdigo os comentrios devem ser iniciados com apstrofos Veja mostra a letra A na caixa de texto TextBox1.Text = A

Variveis
As variveis armazenam um valor na memria do computador que poder ser usado posteriormente para clculos ou exibir uma mensagem, devem ser declaradas com o comando Dim Nome_da_variavel As Tipo_de_Variavel

Tipos de Variveis
Boolean

As variveis Boolean so armazenadas como nmeros de 16 bits (2 bytes), mas s podem ser True ou False. As variveis Currency so armazenadas como nmeros de 64 bits (8 bytes) em um formato de nmero inteiro, em escala de 10.000 para fornecer um nmero de ponto fixo com 15 dgitos esquerda da vrgula decimal e 4 dgitos direita. Essa representao fornece um intervalo de -922.337.203.685.477,5808 at 922.337.203.685.477,5807.

Currency

O tipo de dados Currency til para clculos que envolvem dinheiro e clculos de ponto fixo, nos quais a preciso especialmente importante.

Date

As variveis Date so armazenadas como nmeros IEEE de ponto flutuante de 64 bits (8 bytes) que representam as datas que variam de 1 de janeiro de 100 a 31 de dezembro de 9999 e as horas de 0:00:00 a 23:59:59. Qualquer valor literal de data reconhecvel pode ser atribudo a variveis Date. Os literais date devem estar entre sinais (#), por exemplo, #1 de janeiro de 1993# ou #1 jan 93#. As variveis Date exibem as datas de acordo com o formato abreviado de data reconhecido por seu computador. As horas so exibidas de acordo com o formato de hora (12 ou 24 horas) reconhecido por seu computador. Quando outros tipos numricos so convertidos em Date, os valores esquerda do decimal representam informaes de data, enquanto os valores direita do decimal representam horas. Meia-noite 0 e meio-dia 0,5. Nmeros inteiros negativos representam datas anteriores a 30 de dezembro de 1899.

45

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

String

Os cdigos para caracteres String variam de 0 a 255. Os primeiros 128 caracteres (de 0 a 127) do conjunto de caracteres correspondem s letras e aos smbolos de um teclado padro norte-americano e so iguais queles definidos pelo conjunto de caracteres ASCII. Os 128 caracteres (de 128 a 255) seguintes representam caracteres especiais, como letras de alfabetos internacionais, acentos, smbolos de moeda e fraes.

Byte

As variveis Byte so armazenadas como nmeros de 8 bits (1 byte), sem sinal, nicos, que variam em valor de 0 a 255. O tipo de dados Byte til para conter dados binrios.

Decimal

As variveis Decimal so armazenadas como nmeros inteiros, sinalizados, de 96 bits (12 bytes), em escala por uma potncia de 10 varivel. O fator de escala potncia de 10 especifica o nmero de dgitos direita da vrgula decimal e varia de 0 a 28. Com uma escala de 0 (sem casas decimais), o maior valor possvel +/79.228.162.514.264.337.593.543.950.335. Com 28 casas decimais, o maior valor +/-7,9228162514264337593543950335 e o menor valor, diferente de zero, +/-0,0000000000000000000000000001. IMPORTANTE: Atualmente, o tipo de dados Decimal pode ser usado somente dentro de uma Variant, ou seja, voc no pode declarar uma varivel como sendo do tipo Decimal. No entanto, voc pode criar uma Variant com o subtipo Decimal usando a funo CDec.

Double

As variveis Double (vrgula flutuante de dupla preciso) so armazenadas como nmeros IEEE de vrgula flutuante de 64 bits (8 bytes), com valor no intervalo de -1,79769313486232E308 a 4,94065645841247E-324 para valores negativos e de 4,94065645841247E-324 a 1,79769313486232E308 para valores positivos. O caractere de declarao de tipo para Double o sinal #.

Integer

As variveis Integer so armazenadas como nmeros de 16 bits (2 bytes) com valor no intervalo de -32.768 a 32.767. O caractere de declarao de tipo para Integer o sinal de porcentagem (%). As variveis Integer tambm podem ser usadas para representar valores enumerados. Um valor enumerado pode conter um conjunto finito de nmeros inteiros exclusivos, cada um com um significado especial no contexto em que usado. 46

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Para entender as variveis vamos desenvolver uma calculadora, que pode ser muito til caso o usurio queira fazer um clculo simples e rpido sem ter que usar frmulas. No editor do VBA clique no menu Inserir >> UserForm, para inserir um formulrio que ser a tela da calculadora, neste UserForm insira os seguintes componentes:

3 TextBox 4 Botes 1 Rtulo Organize os componentes e altere as propriedades para que fiquem parecidos com a imagem abaixo:

Clique 2 vezes no boto com o sinal de soma (+) e digite o seguinte cdigo, entre Private Sub CommandButton1_Click() e End Sub : Dim x, y As Double x = TextBox1.Text y = TextBox2.Text TextBox3.Text = x + y Comentando o cdigo: Dim x, y As Double - variveis mostra que sero utilizados dois nmeros X e Y x = TextBox1.Text y = TextBox2.Text mostra qual componente vai receber cada varivel TextBox3.Text = x + y calcula no TextBox3 a soma de X+Y

47

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional Repita o mesmo procedimento para os outros botes lembrando de trocar o sinal do operador no cdigo de cada boto. Depois de pronta crie um boto de comando no Excel, clique duas vezes nele e digite o cdigo para chamar a calculadora FrmCalculadora.Show note que FrmCalculadora o nome que foi definido para o UserForm

Caixa de mensagem
As caixas de mensagem podem ser usadas para exibir informaes na forma de avisos, seu uso bem simples, veja o cdigo a seguir: Private Sub CommandButton1_Click() MsgBox ("ola") End Sub

48

Excel Avanado Deivis Fontes Styllus Escola de Qualificao Profissional

Captulo 8 Guia de consulta rpida


Frmulas
Frmula =A1+A2 =SOMA(A1:A10) =A1-A2 =A1*A2 =A1/A2 =MEDIA(A1:A10) =Mnimo(A1:A10) =MAXIMO(A1:A10) =SE(A1<= 7;Aprovado;Reprovado) Ao Soma 2 valores Soma o intervalo de clulas entre A1 e A10 Subtrao Multiplicao Diviso Calcula a mdia de valores no intervalo entre A1 e A10 Mostra o menor valor entre o intervalo A1 e A10 Mostra o maior valor entre o intervalo A1 e A10 Frmula lgica testa se o valor da clula A1 for menor ou igual a 7 mostra como resultado Aprovado, caso contrrio Reprovado Testa se o valor da clula A1 for diferente de em branco (o sinal indica espao em branco), ento calcula A1*5, caso contrrio mostra a clula em branco Conta o numero de clulas no intervalo entre A1 e A10, funciona apenas com calores numricos (Nmeros em geral, data, hora e valores monetrios). Calcula a raiz quadrada do valor contido na clula A1 Calcula a potncia do valor contido na clula A1 elevado a 2 Junta o valor das clulas A1 e A2 Junta o valor das clulas A1 e A2 deixando um espao em branco entre as duas Mostra o valor da clula A1 da planilha Plan2 Mostra a primeira letra maiscula Procura um valor, onde: PROCV formula A2 Clula onde digita o cdigo a ser procurado Produtos!A2:A10 intervalo de clulas onde o cdigo ser procurado 2 refe-se coluna B neste caso indicada pelo nmero 2

=SE(A1<>"";A1*5;"")

=CONT.NUM(A1:A10)

=Raiz(A1) =A1^2 =CONCATENAR(A1;A2) =CONCATENAR(A1; ;A2) =Plan2!A1 =PRI.MAIUSCULA(A1) =PROCV(A2;PRODUTOS!A2:A10;2

VBA
Worksheets(2).Activate Workbooks.Open(C:\Balano.xls) Worksheets.Add Range(A1).Activate Range("A1").Value = "ABC" UserForm1.Show End TextBox1.Text Label1.caption Ativa e exibe a planilha 2 seguindo a ordem qu elas esto na pasta de trabalho Abre a planilha Balano salva no disco C:\ Adiciona uma nova planilha Ativa uma clula Define o valor ABC na clula A1 Mostra um formulrio Fecha um formulrio Propriedade Text da caixa de texto Propriedade Caption que mostra o texto do rtulo 49