Anda di halaman 1dari 77

MAD - INFORMTICA

ndice
Captulo 1 ______________________________________________________________________________________ 1 MANIPULANDO DADOS _____________________________________________________________________ 1 EXERCCIOS DE CONHECIMENTO ___________________________________________________________ 2 EXERCCIO 1______________________________________________________________________________ 3 FATURAS: ________________________________________________________________________________ 3 FORMATAO CONDICIONAL______________________________________________________________ 5 Formulrio _________________________________________________________________________________ 7 FILTRO ___________________________________________________________________________________ 9 AUTOFILTRO _____________________________________________________________________________ 9 FILTRO AVANADO ______________________________________________________________________ 10 SUBTOTAIS ______________________________________________________________________________ 12 TPICOS ________________________________________________________________________________ 13 ORGANIZAO DE TPICOS MANUAL _____________________________________________________ 13 LIMPANDO A ESTRUTURA DE TPICOS ____________________________________________________ 13 MANIPULANDO A VISUALIZAO DOS TPICOS ___________________________________________ 13 CONVERSO DE TEXTOS PARA COLUNAS__________________________________________________ 14 Captulo 2 _____________________________________________________________________________________ 15 MANIPULAO AVANADA ________________________________________________________________ 15 ATINGIR META __________________________________________________________________________ 15 SOLVER (Pesquisa Operacional) ______________________________________________________________ 17 EXERCCIO 2_____________________________________________________________________________ 18 Resoluo ________________________________________________________________________________ 23 Exerccio 2a _______________________________________________________________________________ 24 Cenrio __________________________________________________________________________________ 25 Exerccio 3________________________________________________________________________________ 26 Utilizando a Caixa "Gerenciador de Cenrios" ____________________________________________________ 27 Cenrios e Solver___________________________________________________________________________ 28 Tabela Dinmica ___________________________________________________________________________ 28 Personalizando Tabelas Dinmicas. ____________________________________________________________ 30 Assistente de Modelo _______________________________________________________________________ 31 Criar um novo registro_______________________________________________________________________ 36 Continuar sem atualizar ______________________________________________________________________ 36 EXERCCIO 4_____________________________________________________________________________ 36 Captulo 3 _____________________________________________________________________________________ 42 MACROS __________________________________________________________________________________ 42 Gravando uma Macro _______________________________________________________________________ 42 Nome da Macro___________________________________________________________________________ 43 Tecla de Atalho ____________________________________________________________________________ 43 Armazenar Macro Em _______________________________________________________________________ 43 Executando a Macro pelo Nome _______________________________________________________________ 44 Associando a Macro a uma Tecla de Atalho ______________________________________________________ 44 Executando a Macro pelo Atalho ______________________________________________________________ 45 Unindo Macros ____________________________________________________________________________ 46 Captulo 4 _____________________________________________________________________________________ 48 MACROS EM LINGUAGEM VISUAL BASIC ___________________________________________________ 48 Definies e Conceitos. ______________________________________________________________________ 48 O Cdigo Visual Basic ______________________________________________________________________ 48 Inserindo cdigos em Macros._________________________________________________________________ 49 Objetos do Visual Basic. _____________________________________________________________________ 50 Excel Avanado 2000 ndice

MAD - INFORMTICA
Propriedades dos Objetos ____________________________________________________________________ Retornando o valor de uma propriedade. ________________________________________________________ Executando aes com mtodos de objetos ______________________________________________________ Objetos como recipientes de outros objetos.______________________________________________________ O Objeto Aplicativo ________________________________________________________________________ Navegando entre objetos em um Recipiente______________________________________________________ Coleo de Objetos _________________________________________________________________________ Trabalhando com objetos especficos em recipientes ou colees _____________________________________ Trabalhando com o objeto intervalo. ___________________________________________________________ Mtodo Clulas____________________________________________________________________________ 50 50 51 51 51 51 51 52 52 52

Captulo 5 ____________________________________________________________________________________ 53 PROGRAMANDO EM LINHA COM O VBA ____________________________________________________ Etapa 1 __________________________________________________________________________________ Etapa 1a _________________________________________________________________________________ Etapa 2 __________________________________________________________________________________ Etapa 2a _________________________________________________________________________________ Etapa 2b _________________________________________________________________________________ Etapa 2c _________________________________________________________________________________ 53 53 54 54 55 58 59

Captulo 6 ____________________________________________________________________________________ 60 PROGRAMANDO OBJETOS EM VBA ________________________________________________________ 60

Excel Avanado 2000

ndice

II

MAD - INFORMTICA
Captulo 1
MANIPULANDO DADOS
Ao ser carregado o Excel apresenta uma pasta de trabalho.

A pasta pode ser composta por diversas planilhas, grficos, macros e modelos. A manipulao bsica desta pasta j deve ser de seu conhecimento, pois iremos abordar apenas os recursos no apresentados em nosso treinamento do Microsoft Excel 8.0 Bsico. Neste captulo aps o exerccio de conhecimento do Excel bsico 8.0, trataremos dos conceitos de manipulao de dados no Microsoft Excel, recursos que agilizam a manipulao de planilhas com grandes conjuntos de dados elaborados em um modo de lista.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
EXERCCIOS DE CONHECIMENTO

Ao final dos exerccios, compare-os com a resposta do seu professor.

Analise a planilha acima e responda:


1) Qual a frmula utilizada para o TOTAL das notas da aluna Adriana. 2) Qual a frmula utilizada para a mdia dos quatro Bimestres do aluno Paulo. 3) Qual a frmula para a SITUAO dos alunos conforme situaes abaixo. Notas Menores que 40 Notas de 40 a 59 Notas maior ou igual a 60 = REPROVADO = RECUPERAO = APROVADO

4) Qual a frmula utilizada pelo Excel que conta quantos alunos foram APROVADOS. 5) Qual a frmula utilizada pelo Excel que mostra qual a Maior Nota Final.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
EXERCCIO 1

1) Elabore a planilha abaixo e d o nome de FATURAS.


A 1 FATURA 11560 2 11561 3 11562 4 11563 5 11564 6 11565 7 11566 8 11567 9 11568 10 11569 11 11570 12 11571 13 11572 14 11573 15 11574 16 11575 17 11576 18 11577 19 11578 20 11579 21 B
DATA

C
CDIGO

D
EMPRESA

E 3299 601 7823 112 430 245 90 3084 312 163 2650 411 4235 122 538 1138 645 1120 180 812

G
TOTAL

QUANTIA ENCARGOS

12/Set/98 12/Set/98 12/Set/98 12/Set/98 12/Set/98 15/Set/98 15/Set/98 15/Set/98 16/Set/98 16/Set/98 16/Set/98 16/Set/98 16/Set/98 16/Set/98 17/Set/98 17/Set/98 17/Set/98 18/Set/98 18/Set/98 18/Set/98

101 85 101 54 12 101 85 54 12 85 101 54 12 85 101 12 85 54 12 85

2) Elabore em outra planilha a tabela abaixo e d o nome de EMPRESAS.


1 2 3 4 5 6 B C RELAO DE EM PRESAS E ENCARGOS Cdigo Enpresa Encargos 12 Silva & Silva 5% 54 Gourmet Importao/Exportao 6% 85 Museu Nacional 3% 101 Linhas Areas Cu Azul 8% A

3) Salve a pasta de Trabalho e elabore as seguintes frmulas na planilha

FATURAS:
Empresa = Apresentar o nome da empresa pesquisando pelo cdigo. Encargos = Calcular sobre a quantia o encargo relativo a cada empresa. Total = Somatrio da quantia e encargos de cada fatura. 4) Compare o resultado do exerccio com a planilha seguinte, lembrando que para elaborar as frmulas precisamos dos conceitos de pesquisa e relacionamento: Pesquisa: PROCV(Dado...Localizao; Matriz... Tabela; Retorno)
Dado_localizao a informao a ser utilizada na localizao do dado pesquisado. Matriz_tabela a determinao de toda a rea de dados (exceto ttulos) da tabela onde se efetuar a pesquisa.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
Retorno o nmero da coluna na tabela de pesquisa onde se encontra o dado desejado. Lembrando que a primeira coluna recebe o numero um e assim sucessivamente.

Relacionamento: NOME DA PLANILHA!ENDEREO


Nome da Planilha a determinao do nome da planilha de onde se deseja buscar (relacionar) uma informao. Lembrando que se o nome for composto o mesmo deve ser colocado entre apstrofe. Endereo a indicao da(s) clula(s) onde se encontra(m) o(s) dado(s) a ser (em) obtido(s) no relacionamento.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
A 1 FATURA 11560 2 11561 3 11562 4 11563 5 11564 6 11565 7 11566 8 11567 9 11568 10 11569 11 11570 12 11571 13 11572 14 11573 15 11574 16 11575 17 11576 18 11577 19 11578 20 11579 21 B C D DATA CDIGO EMPRESA 12/Set/98 101 Linhas Areas Cu Azul 12/Set/98 85 Museu Nacional 12/Set/98 101 Linhas Areas Cu Azul 12/Set/98 54 Gourmet Importao/Exportao 12/Set/98 12 Silva & Silva 15/Set/98 101 Linhas Areas Cu Azul 15/Set/98 85 Museu Nacional 15/Set/98 54 Gourmet Importao/Exportao 16/Set/98 12 Silva & Silva 16/Set/98 85 Museu Nacional 16/Set/98 101 Linhas Areas Cu Azul 16/Set/98 54 Gourmet Importao/Exportao 16/Set/98 12 Silva & Silva 16/Set/98 85 Museu Nacional 17/Set/98 101 Linhas Areas Cu Azul 17/Set/98 12 Silva & Silva 17/Set/98 85 Museu Nacional 18/Set/98 54 Gourmet Importao/Exportao 18/Set/98 12 Silva & Silva 18/Set/98 85 Museu Nacional E QUANTIA 3.299,00 601,00 7.823,00 112,00 430,00 245,00 90,00 3.084,00 312,00 163,00 2.650,00 411,00 4.235,00 122,00 538,00 1.138,00 645,00 1.120,00 180,00 812,00 F ENCARGOS 263,92 18,03 625,84 6,72 21,50 19,60 2,70 185,04 15,60 4,89 212,00 24,66 211,75 3,66 43,04 56,90 19,35 67,20 9,00 24,36 G TOTAL 3.562,92 619,03 8.448,84 118,72 451,50 264,60 92,70 3.269,04 327,60 167,89 2.862,00 435,66 4.446,75 125,66 581,04 1.194,90 664,35 1.187,20 189,00 836,36

FORMATAO CONDICIONAL
Utilizando a FORMATAO CONDICIONAL, voc poder destacar resultados em sua Planilha como: Encargos Menores do que 200,00 cor Vermelho, Maior ou igual a 200,00 e Menor ou igual a 400,00 cor Verde e Maior do que 400,00 cor Azul. Selecione as clulas da coluna F ou seja, de F2 at F21. Formatar Formatao Condicional Ir aparecer a seguinte caixa de dilogo:

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
Clique no Drop-down da caixa de Texto conforme abaixo e selecione Menor do que .

Em seguida digite a condio 200

Para destacar a cor do resultado, clique no boto Formatar e escolha com cor, a cor vermelho.

Clique no Boto Adicionar e repita a operao conforme proposto e compare o resultado.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA

Formulrio
Em uma lista de dados do Microsoft Excel, Voc pode: acrescentar, localizar, editar ou excluir registros usando um formulrio de dados (caixa de dilogo que exiba um registro completo por vez). A lista a ser manipulada por um formulrio deve possuir no mnimo uma linha de dados (registro), para que o Excel possa definir os campos de edio (podem ser alterados) e os campos calculados (as serem copiados). Dados. Formulrio. Manipule os registros da lista atravs dos botes de comando do formulrio.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA

Podemos exibir at 32 campos (colunas) e 65.536 registros (linhas em um formulrio).

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA
FILTRO
Filtrar um meio fcil e rpido de localizar e trabalhar com um subconjunto de dados de uma lista. Quando se filtra uma lista, o Excel exibe apenas as linhas que contm um de terminado valor ou que atendam a determinadas condies de pesquisa denominados critrios, ocultando as demais. Existem duas maneiras de filtrar uma lista no Excel:

AUTOFILTRO
Use o Auto Filtro para filtrar sua lista rapidamente, ajustando o contedo de uma clula ou usando critrios simples de comparao. Usando exemplo da planilha FATURAS, posicione em qualquer clula da lista. Dados Filtrar Auto Filtro Defina a condio da pesquisa atravs das setas drop-down, de cada campo, escolhendo o item Personalizar. Exemplo 1: Mostra do campo NMERO, os itens 101. Abrir a lista NMERO. Clicar no item 101. Exemplo 2: Mostrar, do campo QUANTIA, os itens que so maiores ou iguais a 2000. Abrir a lista QUANTIA. Clicar no item Personalizar. Definir o critrio menor ou igual a 2000.

Excel Avanado 2000

Captulo 1

Manipulando dados

MAD - INFORMTICA

Exemplo 3 Mostrar no campo Total somente os itens entre 2000 e 5000. Abrir a lista TOTAL. Clicar no item Personalizar. Definir o critrio maior do que 2000 E menor do que 5000

Para desabilitar o comando AutoFiltro e voltar tabela original, Dados Filtrar Auto Filtro

FILTRO AVANADO
Use Filtro Avanado para filtrar dados baseados em critrios calculados ou complexos. Pode-se tambm usar para copiar automaticamente os dados que atendam aos critrios especificados para outra rea determinada como sada. Para utilizar o Filtro Avanado necessrios criar uma rea denominada intervalo de critrios, que composta pelo rtulo (ttulo) da coluna e no mnimo uma linha com a condio desejada. Exemplo1: Usando a planilha FATURAS, selecione a clula I2 e digite: rea de Critrio. Selecione a faixa de clulas A1:G1. Clique no cone Copiar. Selecione a clula I2 Clique no cone Colar (Esta a tabela onde iremos definir os Critrios). Selecione a clula I5 e digite: rea de Extrao (rea que receber a extrao dos dados). Selecione uma das clulas da tabela FATURAS. Excel Avanado 2000 Captulo 1 Manipulando dados

10

MAD - INFORMTICA
Dados Filtrar. Filtro Avanado.

1) Defina a ao em que os dados devem ser apresentados, sendo: Filtrar Lista no Local = apresentar os dados desejados na prpria planilha (lista), alterando a planilha de origem. ou Copiar Para Outro Local = apresentar os dados desejados em outro local a ser definido. A Vantagem desse comando que mantm os dados da planilha de origem, gerando uma nova planilha com os dados alterados. 2) Defina o intervalo da lista (banco de dados), podendo ser externa a planilha atual. 3) Defina o intervalo de critrios. No selecione linhas a mais que as necessrias. 4) Caso a ao seja definida como Copiar Para , ser necessrio definir uma clula para o local de incio colocao do resultado, OK. No exemplo, digite os critrios na linha 3 (tabela definida como rea de critrio). Volte no comando Dados, Filtro Avanado e habilite a opo Copiar para outro Local para no alterarmos a tabela original. AS CONDIES PARA CRITRIO PODEM SER: Comparao Simples (Localizar registros de valor exato ao definido) Basta digitar o valor abaixo do rtulo do critrio. Exemplo 2: Localizar os registros de nmero 101. Caracteres Curinga (localizar registros de valores texto semelhantes)? Representa um caractere qualquer. * representa vrios caracteres. Exemplo 3: Localizar as empresas cujos nomes comeam com a letra M. Critrio de Comparao (Localizar registros que atendam a determinados limites) Determine o operador de comparao (=,>,<,>=,<=,<>) seguido do valor limite. Exemplo 4: Localizar os registros cuja QUANTIA seja maior que 2000. Comparao Complexa (localizar registros que atendam a vrios critrios) Ao mesmo tempo (E) = definir os critrios na mesma linha; Um ou outro (OU) = definir os critrios em linhas diferentes. Excel Avanado 2000 Captulo 1 Manipulando dados

11

MAD - INFORMTICA
Exemplo 5: Localizar os registros cujo CDIGO seja 12 e (ao mesmo tempo) a QUANTIA seja inferior a 1000. Critrio Calculado (localiza registros que comparados ao resultado da frmula relacional sejam verdadeiros) A frmula deve referenciar a 1 clula da coluna analisada da lista. Exemplo 6: Localizar os registros cujo TOTAL esteja entre 500 e 1000. Clique na clula P2 e digite: Calculado. Na clula P3 insira a frmula = E(G2>=500;G2<=1000). No se esquea de alterar o intervalo de critrios.

SUBTOTAIS
Inserir subtotais automaticamente um meio rpido de resumir os dados de uma lista (banco de dados) do Excel. No necessrio digitar frmulas na planilha para usar subtotais automticos. Usando os grupos de dados que voc escolher, o Excel calcula automaticamente valores globais e os subtotais, insere e rotula as linhas com totais, esquematizando a lista em tpicos. Antes de inserir os subtotais automticos, ordene as linhas para que os itens a serem subtotalizados fiquem agrupados. Para isso, utilize o comando Dados Classificar. Exemplo 1: Dados, Classificar Classificar por cdigo. Dados. Subtotais

Excel Avanado 2000

Captulo 1

Manipulando dados

12

MAD - INFORMTICA
1) Defina em A cada alterao em o campo (coluna) a ser usado para o agrupamento dos dados. Ex: CDIGO. 2) Defina em Usar funo qual a funo a ser usada no clculo. Ex: SOMA. 3) Defina em Adicionar subtotal quais campos (colunas) devem ser calculados. Ex: TOTAL 4) Marque as opes desejadas para a apresentao do agrupamento, OK. 5) Para manipular a visualizao dos subtotais, necessrio o conhecimento da manipulao em tpicos abordado no prximo item. Para anular o processo, efetue os seguintes comandos: Posicione em uma clula qualquer da lista Dados Subtotais Clique sobre o boto Remover Todos.

TPICOS
A organizao de uma planilha em tpicos especialmente til quando voc deseja compartilhar seus relatrios com outros usurios, os quais podero mudar o modo de exibio de tpicos para exibir ou ocultar quantos detalhes quiserem. Vejamos como criar tpicos automticos no Excel: Selecione qualquer clula da planilha que dever ser organizada em tpicos. Dados Organizar estrutura de tpicos. Auto Tpicos Os tpicos automticos so inseridos nas colunas que contm frmulas (rastreando precedentes)

ORGANIZAO DE TPICOS MANUAL


Se os seus dados no estiverem organizados para o processo automtico, voc pode criar um tpico manualmente: Organizao em colunas Selecione as colunas com os dados de detalhes e escolha o comando Dados, Organizar Estrutura de Tpicos, Agrupar. Organizar linhas Selecione as linhas com os dados de detalhes e escolha o comando Dados, Organizar Estrutura de Tpicos.

LIMPANDO A ESTRUTURA DE TPICOS


Voc pode remover uma parte ou toda a estrutura de tpicos de uma planilha: Toda a estrutura de Tpicos Selecione as linhas ou colunas de onde deseja remover tpicos e escolha o comando Dados, Organizar Estrutura de Tpicos, Limpar Estrutura de Tpicos.

MANIPULANDO A VISUALIZAO DOS TPICOS


Voc pode mudar o modo de visualizao de uma linha estruturada em tpicos, utilizando os smbolos de tpicos: Exibir um nvel especfico Clique sobre um smbolo de nvel (nmero) de linha ou coluna Excel Avanado 2000 Captulo 1 Manipulando dados

13

MAD - INFORMTICA
Exibir detalhes de um grupo Clique sobre o smbolo de mais (+) para exibir detalhes. Ocultar detalhes de um grupo Clique sobre o smbolo de menos (-) para ocultar detalhes.

CONVERSO DE TEXTOS PARA COLUNAS


Ao copiar dados de um documento criado em outro aplicativo para o Excel, voc descobrir que diversas colunas de dados foram condensadas em uma nica coluna. Isto tambm acontece ao abrir um arquivo de texto e optar por no delimitar ou especificar bordas das colunas.

Para solucionar este problema de converso de texto em colunas da planilha: Abra o arquivo ou selecione as linhas a serem convertidas. Dados Texto para Colunas O Excel ir apresentar um Assistente de Texto, ou seja, uma srie de caixas de dilogo que ir gui-lo pelas etapas necessrias s converses do texto

Excel Avanado 2000

Captulo 1

Manipulando dados

14

MAD - INFORMTICA
Captulo 2
MANIPULAO AVANADA ATINGIR META
Muitas vezes sabemos qual o resultado de uma frmula, mas desconhecemos os valores de entrada necessrios para produzir este resultado. Para solucionar esse problema, usamos o recurso Atingir Meta. Com esse comando o Excel altera o valor de uma nica clula especificada, at que a frmula dependente desta clula produza o resultado desejado. O comando Atingir Meta evita que se perca tempo com anlises de tentativa e erros: Para o aprendizado deste recurso, criaremos o seguinte exemplo: 1. Elabore a planilha abaixo d o nome a ela de Atingir Meta :

A 1 2 3 4 5 6 7 8 9 10 11 12 13 Vendedor 1 Vendas Percentual de Comisso Comisso Salrio Fixo Salrio Bruto Vendedor 3 Vendas Percentual de Comisso Comisso Salrio Fixo Salrio Bruto

Controle de Pagamento de Vendedores


Vendedor 2 3.500,00 Vendas 7% Percentual de Comisso Comisso 150,00 Salrio Fixo Salrio Bruto Vendedor 4 4.200,00 Vendas 7% Percentual de Comisso Comisso 180,00 Salrio Fixo Salrio Bruto 4.680,00 7% 180,00

4.950,00 7% 150,00

2. Elabore as seguintes frmulas e confira os valores com a planilha seguinte. Comisso = Valor da venda efetuada multiplicada pelo percentual de comisso. Utilize os operadores aritmticos. Salrio = Somatrio da comisso e o valor fixo. Utilize a funo Soma (faixa).

Excel Avanado 2000

Captulo 2

Manipulao avanada

15

MAD - INFORMTICA
A 1 2 3 4 5 6 7 8 9 10 11 12 13 Vendedor 1 Vendas Percentual de Comisso Comisso Salrio Fixo Salrio Bruto Vendedor 3 Vendas Percentual de Comisso Comisso Salrio Fixo Salrio Bruto B C D

Controle de Pagamento de Vendedores


Vendedor 2 3.500,00 Vendas 7% Percentual de Comisso 245,00 Comisso 150,00 Salrio Fixo 395,00 Salrio Bruto Vendedor 4 4.200,00 Vendas 7% Percentual de Comisso 294,00 Comisso 180,00 Salrio Fixo 474,00 Salrio Bruto 4.680,00 7% 327,60 180,00 507,60 4.950,00 7% 346,50 150,00 496,50

Foi determinado ao Vendedor 2 um pagamento de no mnimo R$ 600, 00, porm, as vendas no atingiram as expectativas e o valor fixo no pode ser alterado. Podemos alterar o percentual de comisso para alcanar o valor desejado, mas em quanto alterar? O problema apresentado pode ser resolvido rapidamente atravs do Atingir Meta: Selecione a clula que contm a frmula cujo valor deve ser alterado. Ferramentas. Atingir Meta.

Excel Avanado 2000

Captulo 2

Manipulao avanada

16

MAD - INFORMTICA
Os trs parmetros a seguir devem ser definidos: 1. Definir clula: especifica a clula que contm a frmula para qual voc deseja encontrar uma soluo. 2. Para valor: especifica o novo valor que se deseja atingir. 3. Variando clula: especifica a clula cujo valor voc deseja que o Excel mude para atingir o resultado desejado. A clula definida deve ter uma referncia direta ou indireta clula da frmula para qual voc deseja encontrar uma soluo, OK. 4. Ser exibida uma caixa de dilogo Status do Comando opes: Atingir Meta, onde estaro disponveis as seguintes

Cancelar Etapa Pausar Continuar OK

Cancela o clculo e preserva o valor original Continua os clculos para atingir a meta, uma etapa de cada vez. Interrompe o clculo aps uma pausa (quando voc escolhe esse boto, ele muda para Continuar ). Continua o clculo aps uma pausa (quando voc escolhe esse boto, ele muda para Pausar ). Substitui o valor da clula especificada na caixa Clula pelo novo valor. Variando

A clula definida em Variando clula no pode ser uma frmula.

SOLVER (Pesquisa Operacional)


O Solver uma ferramenta eficaz para otimizao e alocao de recursos. Ajuda a descobrir como tirar o melhor proveito de recursos escassos, de tal modo que os objetivos desejados (como o lucro) possam ser maximizados e os objetivos indesejveis (como o custo) possam ser minimizados. O Solver responde a perguntas como, por exemplo: Que preo de produto ou pacote promocional poderia aumentar o lucro? Como fazer para viver dentro do oramento? Excel Avanado 2000 Captulo 2 Manipulao avanada

17

MAD - INFORMTICA
Com que rapidez pode crescer sem que o dinheiro acabe? Ao invs de tentar adivinhar, voc pode usar o Solver para encontrar as respostas mais adequadas.
O comando Solver dever aparecer no menu Ferramentas. Se no estiver instalado, escolha o comando Ferramentas Suplemento e marque a opo Solver (caso no exista esta opo, ser necessrio localizar o arquivo Solver.xls para instalar a macro suplementar do Solver).

ou Para o aprendizado deste recurso, criaremos o seguinte exerccio:

EXERCCIO 2

Excel Avanado 2000

Captulo 2

Manipulao avanada

18

MAD - INFORMTICA
1. Elabore a planilha abaixo e d a ela o nome de Solver :

A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Matria Prima (Kg) Custo Produo (Unid) Preo Produto Qtde Produzida (unid) Total Matria Prima Disponvel (Kg) Matria Prima Consumida (Kg) Capacidade de Produo (unid/dia) Produo Efetuada (unid/dia) Custo Fixo da Produo (dia)

Empresa X Ltda Controle de Faturamento


Produtos X
3,00 5,00 9,00 125

Y
2,00 3,00 5,00 380

X
5,00 6,00 7,00 230

20.000 1.000 100,00 Faturamento Custo Lquido

Excel Avanado 2000

Captulo 2

Manipulao avanada

19

MAD - INFORMTICA
Elabore a seguinte frmula: Total Multiplicao do Preo do Produto pela Qtde Produzida. Utilize os operadores aritmticos. Somatrio da multiplicao da matria-prima pela Qtde Produzida de cada produto. Utilize os operadores aritmticos. Somatrio da Qtde Produzida de cada produto. Utilize a funo Soma (faixa) Somatrio do Total de cada Produto. Utilize a funo Soma (faixa). Somatrio da multiplicao do Custo da Produo pela Qtde Produzida de cada produto, somado ao custo Fixo da Produo. Utilize os operadores aritmticos. Subtrao do Faturamento pelo Custo. Utilize os operadores aritmticos.

Matria Prima Consumida

Produo Efetuada

Faturamento

Custo

Lquido

Confira os valores com a planilha a seguir:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Matria Prima (Kg) Custo Produo (Unid) Preo Produto Qtde Produzida (unid) Total

Empresa X Ltda Controle de Faturamento


Produtos X
3,00 5,00 9,00 125 1.125,00

Y
2,00 3,00 5,00 380 1.900,00 20.000 2.285,00 1.000 735 100,00

X
5,00 6,00 7,00 230 1.610,00

Matria Prima Disponvel (Kg) Matria Prima Consumida (Kg) Capacidade de Produo (unid/dia) Produo Efetuada (unid/dia) Custo Fixo da Produo (dia) Faturamento 4.635,00

Custo 3.245,00

Lquido 1.390,00

O problema que a Empresa X Ltda. deseja maximizar seu faturamento. Porm, a matria prima consumida de no mximo 20.000 Kg e a produo efetuada est limitada a 1.000 unidades/dia, sendo que o mercado absorve ao mximo 200 unidades do produto X e o mnimo de produo do produto X, 10, o mnimo do produto Y 15 e o mnimo do produto Z 12. Quantas unidades de cada produto devero fabricar? Este um tpico problema a ser resolvido pelo Solver, pois precisa alterar algumas variveis ao mesmo tempo e possui restries quanto s alteraes. Vejamos como usar o Solver: Excel Avanado 2000 Captulo 2 Manipulao avanada

20

MAD - INFORMTICA
Clique na clula a ser ajustada. Ferramentas. Solver.

Ser apresentada a seguinte tela:

Ser necessrio efetuar as seguintes definies na caixa de dilogo: Definir clula de destino Clula que se deseja minimizar, maximizar ou ajustar para um determinado valor> Esta clula deve conter uma frmula que depende direta ou indiretamente das clulas variveis. Igual a Definir o processo em que se deseja igualar a clula destino. Clulas variveis. Clulas a serem alteradas pelo Solver at que as restries do problema estejam satisfeitas e a clula de destino tenha atingido sua meta. Caso queira que o Solver proponha as clulas variveis baseados na clula de destino, escolha o boto Estimativa . Poder ser definido at 200 clulas variveis, evitando clulas que contenham frmulas, pois o Solver ir transform-las em constantes (valores fixos).

Submeter s restries Atravs dos botes Adicionar , Modificar e Excluir , define-se as restries necessrias ao problema. Podemos especificar duas restries para cada clula varivel (limite mximo e/ou mnimo), alm de 200 restries adicionais, gerando um total de 600 restries em cada problema. Resolver. Quando o processo de soluo de um problema chega ao fim, uma caixa de dilogo, conforme figura abaixo, exibe vrias opes. Voc pode:

Excel Avanado 2000

Captulo 2

Manipulao avanada

21

MAD - INFORMTICA

Manter a soluo que o Solver encontrou ao restabelecer os valores originais da planilha; Salvar a soluo como um cenrio nomeado, usando o Gerenciador de Cenrios; Exibir qualquer relatrio predefinido do Solver.

Excel Avanado 2000

Captulo 2

Manipulao avanada

22

MAD - INFORMTICA
Resoluo
Para o problema apresentado, teremos que definir; Clula de destino = B17 (faturamento) Igual a = Max Clulas variveis = B7:D7 (quantidade produzida de cada produto) C11 C13 B7 B7 C7 D7 <= 20.000 (limite para o gasto de matria prima) <= 1.000 (limite de produo) <= 200 (limite mximo de produo do produto X) >= 10 (limite mnimo de produo do produto X) >= 15 (limite mnimo de produo do produto Y) >= 12 (limite mnimo de produo do produto Z)

Compare o resultado obtido com a planilha a seguir:


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Matria Prima (Kg) Custo Produo (Unid) Preo Produto Qtde Produzida (unid) Total Matria Prima Disponvel (Kg) Matria Prima Consumida (Kg) Capacidade de Produo (unid/dia) Produo Efetuada (unid/dia) Custo Fixo da Produo (dia) Faturamento 7.370,00

Restries

Empresa X Ltda Controle de Faturamento


Produtos X
3,00 5,00 9,00 200 1.800,00

Y
2,00 3,00 5,00 15 75,00 20.000 4.555,00 1.000 1000 100,00 Custo 5.855,00

X
5,00 6,00 7,00 785 5.495,00

Lquido 1.515,00

Excel Avanado 2000

Captulo 2

Manipulao avanada

23

MAD - INFORMTICA
Exerccio 2a
1. Utilizando a planilha anterior a Empresa X Ltda., precisa minimizar seus custos, obtendo no mnimo um lucro de 1.800,00. Como minimiz-lo?

No se esquea de adicionar a restrio para o lquido de 1.800,00.

Compare o resultado obtido com a tabela seguinte:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Matria Prima (Kg) Custo Produo (Unid) Preo Produto Qtde Produzida (unid) Total

Empresa X Ltda Controle de Faturamento


Produtos X
3,00 5,00 9,00 200 1.800,00

Y
2,00 3,00 5,00 544 2.720,00 20.000 1.748,00 1.000 756 100,00

X
5,00 6,00 7,00 12 84,00

Matria Prima Disponvel (Kg) Matria Prima Consumida (Kg) Capacidade de Produo (unid/dia) Produo Efetuada (unid/dia) Custo Fixo da Produo (dia) Faturamento 4.604,00

Custo 2.804,00

Lquido 1.800,00

Excel Avanado 2000

Captulo 2

Manipulao avanada

24

MAD - INFORMTICA
2. A Empresa X Ltda. pretende obter um Lucro lquido de 2.150,00. Como obt-lo? Compare o resultado obtido com a planilha ao lado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 M atria Prima (Kg) Custo Produo (Unid) Preo Produto Qtde Produzida (unid) Total M atria Prima Disponvel (Kg) M atria Prima Consumida (Kg) Capacidade de Produo (unid/dia) Produo Efetuada (unid/dia) Custo Fixo da Produo (dia) Faturamento 5.479,00

Empresa X Ltda Controle de Faturamento


Produtos X
3,00 5,00 9,00 200 1.800,00

Y
2,00 3,00 5,00 719 3.595,00 20.000 2.098,00 1.000 931 100,00 Custo 3.329,00

X
5,00 6,00 7,00 12 84,00

Lquido 2.150,00

Cenrio
Os cenrios so teis quando voc tem um modelo de hiptese com variveis inconstantes. Por exemplo, voc quer criar um oramento para o prximo ano, mas no sabe qual ser a sua renda. Usando o gerenciador de cenrios, voc pode definir vrios cenrios, passar de um para o outro para executar anlises de hipteses e salvar os cenrios com os seus modelos. De um modo geral podemos utilizar o gerenciador de cenrios para: Criar diversos cenrios com vrios conjuntos de clulas variveis (32 por cenrio). Apresentar os resultados de cada cenrio em sua planilha. Criar um relatrio resumo de todos os valores de entrada e resultados. Mesclar cenrios de um grupo em um nico modelo de cenrio. Proteger cenrios contra modificaes e ocultar cenrios. Acompanhar as modificaes com um histrico automtico do cenrio. Ao criar um cenrio, voc deve especificar as clulas variveis (clulas no modelo da planilha que voc deseja que sejam marcadas) e os valores a serem usados nestas clulas. Normalmente, as clulas variveis de um cenrio so aquelas das quais uma frmula chave depende, embora as clulas variveis entre si no devem conter frmulas. Vejamos como criar um cenrio: Ferramentas Cenrio Clice no boto Adicionar. Digite um nome para o cenrio. Determine as clulas variveis (a serem alteradas). Digite o comentrio sobre o cenrio a ser apresentado (caso queira). OK Digite os valores desejados, nas clulas variveis (na apresentao do seu cenrio). OK.

Excel Avanado 2000

Captulo 2

Manipulao avanada

25

MAD - INFORMTICA
Exerccio 3
1. Elabore a seguinte planilha e d a ela o nome de Cenrio :

A 1 2 3 4 5 6 7 8 9 10 11

B 75.000,00 17.710,00

Oramento 1999
Renda Bruta Mercadoria Vendida Lucro Bruto Aluguel Luz, gua, Telefone Administrao Geral Despesas Renda Operacional

12.000,00 1.000,00 2.500,00

2. Elabore as seguintes frmulas: Lucro bruto = Despesas = Renda Operacional = Subtrao da renda bruta pela mercadoria vendida. Utilize os operadores racionais. Somatrios das despesas apresentadas. Utilize a funo Soma (faixa). Subtrao do Lucro Bruto pelas Despesas. Utilize os operadores racionais.

3. Compare com a planilha seguinte:

A 1 2 3 4 5 6 7 8 9 10 11

B 75.000,00 17.710,00 57.290,00 12.000,00 1.000,00 2.500,00 15.500,00 41.790,00

Oramento 1999
Renda Bruta Mercadoria Vendida Lucro Bruto Aluguel Luz, gua, Telefone Administrao Geral Despesas Renda Operacional

4. Crie os seguintes cenrios, definindo como clulas variveis Renda Bruta (B3) e Mercadoria Vendida (B4). Cenrio Melhor Caso , com uma renda bruta de 150.000,00, e o custo da mercadoria vendida em 26.565,00. Cenrio Pior Caso com uma renda bruta de 50.000,00 e o custo da mercadoria vendida em 13.282,00.

Excel Avanado 2000

Captulo 2

Manipulao avanada

26

MAD - INFORMTICA
Cenrio Mais provvel , com os valores originais da planilha, ou seja, uma renda bruta de 75.000,00 e o custo da mercadoria vendida em 17.710,00.

Utilizando a Caixa "Gerenciador de Cenrios"


Ao utilizarmos o comando Ferramentas Cenrio, o Excel apresenta uma caixa de dilogo com o nome de Gerenciador de Cenrios, mostrada na figura abaixo, que, alm de criar cenrios, possibilita as seguintes manipulaes:

Excel Avanado 2000

Captulo 2

Manipulao avanada

27

MAD - INFORMTICA
Mostrar Apresentar os valores definidos nas clulas variveis dos cenrios selecionados. Sair da caixa Gerenciador de Cenrios. Incluir novos cenrios. Excluir o cenrio selecionado. Alterar as definies atribudas ao cenrio selecionado. Mesclar (unir) cenrios de outras planilhas ou pastas para a atual. Gerar um relatrio sobre o cenrio selecionado.

Fechar Adicionar Excluir Editar Mesclar Resumir

Cenrios e Solver
Se voc definir variveis usando o cenrio, as clulas sero automaticamente exibidas como clulas variveis no Solver (se ainda no tiver definido um problema). Caso queira, pode salvar os valores das clulas variveis usadas no Solver como um cenrio, atribuindo-lhe um nome atravs do boto Salvar Cenrios na caixa de dilogo Resultados.

Tabela Dinmica
A Tabela Dinmica uma tabela interativa de planilhas que resume rapidamente grandes quantidades de dados usando formato e mtodos de clculo escolhidos por voc. considerada Dinmica porque permite girar os cabealhos de linha e de coluna em torno da rea principal de dados para obter diferentes vises dos Dados Fonte. medida que os Dados Fonte sofrem alteraes, a tabela pode ser utilizada. Como criada a partir de dados j existentes, voc poder tomar decises referentes quantidade de dados a ser utilizada e organizao desses dados se conhecer a organizao dos Dados Fonte. Para isso, criaremos a seguinte planilha cujo nome dever ser Tabela Dinmica :

Excel Avanado 2000

Captulo 2

Manipulao avanada

28

MAD - INFORMTICA
A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Ms Jan Jan Jan Jan Jan Jan Fev Fev Fev Fev Fev Mar Mar Mar Mar Mar Mar B C D E Controle de Vendas no Ano de 1999 Tipo Vendedor Vendas Unidade Laticnios Suyama 4.356,00 5.636 Laticnios Feldman 2.686,00 5.611 Frutas/Legumes Borges 6.715,00 2.652 Frutas/Legumes Machado 1.328,00 2.861 Bebidas Machado 8.725,00 6.891 Carnes Suyama 9.662,00 3.400 Carnes Suyama 2.666,00 744 Laticnios Borges 6.534,00 6.365 Frutas/Legumes Machado 6.862,00 1.165 Frutas/Legumes Suyama 5.176,00 2.562 Bebidas Suyama 8.231,00 1.682 Carnes Feldman 5.278,00 986 Carnes Borges 2.669,00 3.744 Laticnios Machado 6.662,00 4.744 Frutas/Legumes Feldman 2.733,00 2.790 Bebidas Feldman 6.832,00 8.668 Bebidas Borges 6.596,00 2.366 F Regio Sudeste Sul Nordeste Norte Norte Sudeste Sudeste Nordeste Norte Sudeste Sudeste Sul Nordeste Norte Sul Sul Nordeste

Esta planilha pode ser usada em uma Tabela Dinmica, porque possui os campos a serem usados como campos de linha e coluna (ex: Tipo e Regio). Os itens desses campos so usados como rtulos das linhas e colunas e podem ainda definir campo de pgina (Xe: Vendedor), obtendo-se, assim, uma Tabela Dinmica que apresenta para cada Vendedor os Tipos em cada Regio. Vejamos como criar uma Tabela Dinmica: Dados Relatrio da Tabela e Grficos Dinmicos. Ser apresentado o Assistente da Tabela Dinmica, que tem 4 etapas: 1. Defina onde esto os Dados Fonte que deseja analisar e clique em avanar. 2. Identifique a localizao dos Dados Fonte (intervalo de dados) e clique em Avanar. 3. Crie o layout para a Tabela Dinmica (arrastando os botes de campos para o diagrama) e clique em Avanar. Determine os campos comentados anteriormente para criar a seguinte Tabela Dinmica:

Excel Avanado 2000

Captulo 2

Manipulao avanada

29

MAD - INFORMTICA
Personalizando Tabelas Dinmicas.
A criao de uma Tabela Dinmica apenas o primeiro passo para faz-la trabalhar para voc. Aps cri-la, poder personaliz-la das seguintes formas: Inserindo, excluindo ou reorganizando os campos e os itens da Tabela Dinmica. Mudando a forma de clculo dos dados. Exibindo ou excluindo os subtotais e os totais de blocos. Mudando os nomes dos campos e itens. Mudando o formato. Ocultando e exibindo os dados de detalhe. Agrupando e classificando os itens.

Para personalizar a Tabela Dinmica voc poder usar a barra de ferramentas:

Excel Avanado 2000

Captulo 2

Manipulao avanada

30

MAD - INFORMTICA
Com os novos recursos do Excel 2000, voc poder ainda atravs do Relatrio da Tabela Dinmica gerar um Grfico como mostrado abaixo:

Assistente de Modelo
Voc pode usar o Assistente de Modelo para criar um modelo de tabela, a partir de uma j existente, que vincula as clulas selecionadas a campos em um banco de dados especificado. Quando voc cria uma nova pasta de trabalho a partir do modelo e digita dados nas clulas indicadas, o Excel cria um novo registro no banco de dados e copia estes dados para os campos de dados correspondentes. Este recurso til, para quando vrios usurios tiverem inserindo dados na mesma tabela, possibilitando a todos a digitao de dados ao mesmo tempo. Vejamos como criar um assistente modelo: 1. Crie a tabela modelo:

1 2

A NOME

B SETOR

C SALRIO

2. Salve a pasta como tipo: Modelo(*.xlt). 3. Comando: Dados Assistente de modelo

Excel Avanado 2000

Captulo 2

Manipulao avanada

31

MAD - INFORMTICA
Ser apresentada a seguinte janela, da etapa 1 de 5.

Defina o nome da pasta a partir da qual se deseja criar o modelo, logo em seguida o nome para a pasta modelo. Clique em Avanar.

4. Defina qual ser o modelo de banco de dados que voc deseja que o Assistente de modelo crie (Pasta de trabalho do Microsoft Excel, mas poderia ser um banco de dados externo Access, Dbase, etc...).

Excel Avanado 2000

Captulo 2

Manipulao avanada

32

MAD - INFORMTICA
Em seguida defina qual ser o nome do banco de dados e em que diretrio ser armazenado, Continuar.

Excel Avanado 2000

Captulo 2

Manipulao avanada

33

MAD - INFORMTICA
Plan.:
Identifica a planilha em que os nomes de campo esto definidos. Se estiver criando um novo banco de dados, poder digitar um novo nome. Se estiver usando um banco de dados existente que tenha vrias tabelas ou planilhas, clique sobre o item desejado.

N. :
Identifica o campo (coluna) para o qual os dados da clula especificada sero copiados.

Clulas:
Especifica a clula da planilha a partir da qual os dados sero copiados. Para digitar uma referncia de clula, primeiro clique sobre a caixa Clula e, em seguida, clique sobre a clula na planilha.

Nome do campo:
Identifica o campo de banco de dados para os quais os dados das clulas especificadas sero copiados. Se voc estiver criando um novo banco de dados e a clula especificada estiver abaixo ou direita de um rtulo de texto, clique sobre a caixa Nome do campo e o campo ser inserido automaticamente. Se voc quiser poder alterar o nome. 5. Clique na clula A2 da planilha e clique na caixa Nome do campo e o nome j ir aparecer. Faa o mesmo para as clulas B2 e C2.

Excel Avanado 2000

Captulo 2

Manipulao avanada

34

MAD - INFORMTICA
6. Clique em Avanar.

7. Clique em Avanar e em seguida, Concluir. 8. Feche a planilha modelo. 9. Arquivo, Novo selecione o nome do modelo a ser aberto. OK. 10. Preencha o registro na tabela.

1 2

A NOME Ana

B SETOR ADM

C SALRIO 1200

11. Salve a pasta e a janela a seguir ir ser apresentada:

Excel Avanado 2000

Captulo 2

Manipulao avanada

35

MAD - INFORMTICA
Criar um novo registro
Para que os dados que foram digitados na tabela sejam enviados para o banco de dados.

Continuar sem atualizar


Para que salve sem enviar os dados para o banco de dados. 12. Deixa a opo Criar novo registro habilitado. OK. 13. Salve e feche a pasta. 14. Execute os passos 9, 10 e 11 novamente para criar outro registro, no Banco de Dados. 15. Abra a pasta Banco de Dados para verificar os dados que foram registrados. Para um melhor entendimento, crie um modelo com base na tabela da planilha Faturas, j criada por voc, no inicio do curso.

EXERCCIO 4

1. Elabore a tabela abaixo:

1 2

A Nome Ftima

B Sobrenome Aguiar

C Endereo R. Frei Luiz, 101 - Gutierrez

D Data Nasc. 05/10/59

E F Cidade Estado Belo Hte MG

2. Atravs da manipulao de Formulrio, inclua mais cinco registros, onde pelo menos dois desses registros, tenham moradores do estado do RJ. 3. Efetue uma pesquisa, criando um critrio para o campo ESTADO RJ. 4. D o nome de ENDEREO para a planilha. 5. Atravs de filtros, exiba somente os registros cujos moradores sejam da cidade de BH. 6. Elabore a planilha a seguir:

Excel Avanado 2000

Captulo 2

Manipulao avanada

36

MAD - INFORMTICA
1 2 3 4 5 6 7 8 9 10 11 12 13 14 A Data de Lanamento 01/03/98 02/06/98 06/06/98 02/06/98 15/08/98 15/08/98 15/08/98 25/11/98 25/11/98 23/12/98 05/01/99 05/01/99 05/01/99 B Crdito 50,00 250,00 580,00 375,00 69,50 3,95 236,74 1.050,00 287,34 290,41 748,26 230,45 554,32 C Dbito D Histrico do Lanamento Depsito em Dinheiro Ch. N 000250 Aplicao FAF Dep. Ch. 02 Dias Saque com Carto CPMF Saque com Carto Dep. Ch. 01 Dia Transf. Poupana Aplicao FAF Renovao Seguro Dep. Ch. 03 Dias Dep. Ch. 04 Dias

7. D o nome de CONTROLE para a planilha. 8. Crie subtotais nos campos de Crdito e Dbito a cada mudana da Data. 9. Atravs dos comandos de manipulao de tpicos, mostre somente os subtotais por data para poder fazer uma impresso resumida dos lanamentos. 10. Em uma nova planilha crie a seguinte tabela e salve com o nome RecDesp:

A 1 2 3 4 5 6 7 8 9 10 11 12 13

RECEITAS Descrio Valores Salrio R$ 3.500,00 Gratificaes R$ 450,00 Aluguis R$ 238,35 Aplicaes R$ 1.230,00 R$ 348,83

DESPESAS Descrio Valores Alimentao R$ 240,00 Vesturio R$ 376,00 Luz/gua R$ 95,00 Telefone R$ 77,45 Sade R$ 82,00 Transporte R$ 45,00 Lazer R$ 420,00 R$ 1.335,45 PODEMOS FARRIAR

Sub-Total: Total:

R$ 5.767,18 Sub-Total: R$ 4.431,73 Situao

11. Procure efetuar os seguintes clculos: Subtotal Total disponvel Somatrio dos valores. a diferena entre o subtotal de receitas e o subtotal de despesas. Se o total disponvel menor que 2.000,00, apresente o texto: Gastando muito; se o total disponvel entre 2.000,00 e 3.100,00, apresente o texto: Equilibrado; se o total disponvel maior que Captulo 2 Manipulao avanada

Situao

Excel Avanado 2000

37

MAD - INFORMTICA
3.100,00; apresente o texto: Muito Econmico. Compare com a tabela seguinte:

1 2 3 4 5 6 7 8 9 10 11 12 13

B RECEITAS Descrio Valores Salrio R$ 3.500,00 Gratificaes R$ 450,00 Aluguis R$ 238,35 Aplicaes R$ 1.230,00 R$ 348,83

D DESPESAS Descrio Valores Alimentao R$ 240,00 Vesturio R$ 376,00 Luz/gua R$ 95,00 Telefone R$ 77,45 Sade R$ 82,00 Transporte R$ 45,00 Lazer R$ 420,00 R$ 1.335,45

Sub-Total: Total:

R$ 5.767,18 Sub-Total: R$ 4.431,73 Situao

Muito Econmico

12. Usando a tabela acima, use o recurso de Atingir Metas para que o seu disponvel chegue ao valor de 4.600,00, mexendo apenas nos aluguis. 13. Usando, ainda, o exemplo da tabela anterior resolva os seguintes problemas: 13.1. Voc necessita maximizar suas receitas, sendo que os seus aluguis no podem ultrapassar o valor de R$ 1.600,00; as suas aplicaes R$ 1.230,00; no tem como ganhar mais do que R$ 750,00 com horas extras e o seu salrio no ultrapassam o valor de R$ 4.500,00.

Quando no se submete uma clula a restrio, esta no poder ser utilizada como varivel. Ex.: Clula B4 (Gratificaes).

Compare a tabela seguinte:

Excel Avanado 2000

Captulo 2

Manipulao avanada

38

MAD - INFORMTICA
A 1 2 3 4 5 6 7 8 9 10 11 12 13 B C Descrio Alimentao Vesturio Luz/gua Telefone Sade Transporte Lazer D DESPESAS Valores R$ 240,00 R$ 376,00 R$ 95,00 R$ 77,45 R$ 82,00 R$ 45,00 R$ 420,00 R$ 1.335,00 RECEITAS Descrio Valores Salrio R$ 3.500,00 Gratificaes R$ 450,00 Aluguis R$ 238,35 Aplicaes R$ 1.230,00 R$ 348,83

Sub-Total: Total:

R$ R$

8.530,00 Sub-Total: 7.194,55 Situao

Muito Econmico

13.2. Voc necessita diminuir os gastos, sendo que necessita de pelo menos R$35,00 para se alimentar; R$52,00 a taxa mnima de luz/gua; R$75,00 aluguel do telefone; R$42,00 convnio mdico; R$17,00 para compra de vale transporte e com lazer R$35,00.

Compare com a tabela seguinte:

1 2 3 4 5 6 7 8 9 10 11 12 13

B RECEITAS Descrio Valores Salrio R$ 3.500,00 Gratificaes R$ 450,00 Aluguis R$ 238,35 Aplicaes R$ 1.230,00 R$ 348,83

D DESPESAS Descrio Valores Alimentao R$ 240,00 Vesturio R$ 376,00 Luz/gua R$ 95,00 Telefone R$ 77,45 Sade R$ 82,00 Transporte R$ 45,00 Lazer R$ 420,00 R$ 632,00

Sub-Total: Total:

R$ R$

8.530,00 Sub-Total: 7.898,00 Situao

Muito Econmico

Excel Avanado 2000

Captulo 2

Manipulao avanada

39

MAD - INFORMTICA
13.3. Voc necessita maximizar o seu disponvel, sendo que o seu total de receitas pode ser no mximo R$9.000,00 e o seu total de despesas no mnimo R$245,00. Compare com a tabela seguinte:

1 2 3 4 5 6 7 8 9 10 11 12 13

B RECEITAS Descrio Valores Salrio R$ 3.500,00 Gratificaes R$ 450,00 Aluguis R$ 238,35 Aplicaes R$ 1.230,00 R$ 348,83

D DESPESAS Descrio Valores Alimentao R$ 240,00 Vesturio R$ 376,00 Luz/gua R$ 95,00 Telefone R$ 77,45 Sade R$ 82,00 Transporte R$ 45,00 Lazer R$ 420,00 R$ 632,00

Sub-Total: Total:

R$ R$

9.000,00 Sub-Total: 8.368,00 Situao

Muito Econmico

Excel Avanado 2000

Captulo 2

Manipulao avanada

40

MAD - INFORMTICA
14. Crie trs cenrios com base na tabela anterior, onde o 1o cenrio deve ser para um salrio de R$7.500,00 e um gasto com vesturio de R$650,00; o 2o cenrio para aplicaes de R$6.500,00, um gasto com luz/gua de R$127,00 e alimentao de R$87,00; o 3o cenrio para um salrio de R$6.500,00 e um gasto com telefone de R$147,00, lazer de R$450,00 e transporte de R$45,00. 15. Gere um relatrio destes cenrios.

Excel Avanado 2000

Captulo 2

Manipulao avanada

41

MAD - INFORMTICA
Captulo 3
MACROS
As macros so usadas para acelerar e aperfeioar processos rotineiros na manipulao do Excel. Pode, ser desenvolvidas de duas maneiras: por gravao de procedimentos, sendo desnecessrio o conhecimento em lgica de programao; ou atravs de linguagem de programao (Visual Basic), necessitando de conhecimento.

Gravando uma Macro


O modo mais fcil de criar uma macro atravs do gravador de macro. O Excel salva cada digitao ou ao do mouse executada, de modo que se possa repetir rapidamente e sem erros as etapas em outra oportunidade. Para entrar no modo de gravao da macro: Ferramentas Macro Gravar nova Macro

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

42

MAD - INFORMTICA
Nome da Macro
Insira um nome para a macro. O primeiro caractere do nome da macro deve ser uma letra. Os demais caracteres podem ser letras, nmeros ou caracteres sublinhados. No so permitidos espaos no nome de uma macro; um caractere sublinhado funciona da mesma forma que um separador de palavras.

Tecla de Atalho
Para executar a macro pressionando uma tecla de atalho, insira uma letra na caixa Tecla de Atalho. Use CTRL + Letra (para as letras minsculas) ou CTRL + SHIFT + Letra (para letras maisculas), onde letra representa qualquer tecla de letra do teclado. A letra da tecla de atalho usada no pode ser um nmero ou caractere especial. A tecla de atalho substituir quaisquer teclas de atalho padro do Microsoft Excel enquanto a pasta de trabalho que contm a macro estiver aberta.

Armazenar Macro Em
Clique no local onde deseja gravar a macro. Se voc deseja que uma macro fique disponvel sempre que usar o Microsoft Excel, grave a macro na pasta de trabalho pessoal de macros. Para incluir uma descrio da macro, digite a descrio na caixa Descrio.

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

43

MAD - INFORMTICA
Clique em OK. Se voc selecionar clulas durante a execuo de uma macro, a macro selecionar as mesmas clulas independentemente das clulas que foram selecionadas pela primeira vez, pois ela grava as referncias absolutas de clula. Se voc desejar que uma macro selecione clulas independentemente da posio da clula ativa quando a macro estiver sendo executada, defina o gravador de macro para gravar as referncias relativas de clula. Na barra de ferramentas Parar Gravao, clique em Referncia Relativa. O Microsoft Excel continuar a gravar macros com referncias relativas at que voc saia do Microsoft Excel ou at que voc clique em Referncia Relativa novamente. Execute as aes que voc desejar gravar.
Referncia Relativa

Na barra de ferramentas Parar Gravao, clique em Parar Gravao. Se voc desejar que uma macro selecione uma clula especfica, execute uma ao e em seguida, selecione outra clula ativa, voc pode combinar o uso de referncias absolutas e relativas quando for gravar a macro. Para gravar uma Parar Gravao macro usando as referncias relativas, certifique-se que Referncia relativa esteja pressionada. Para gravar com referncias absolutas, certifique-se de que Referncias relativas no esteja pressionada.

Executando a Macro pelo Nome


Para executar os procedimentos gravados em uma macro, utilize os seguintes comandos: Ferramentas Macro. Macros. Selecione o nome da macro que deseja executar Clique no boto Executar.

Associando a Macro a uma Tecla de Atalho


Para associar uma macro j gravada a uma tecla de atalho, execute os seguintes procedimentos: Ferramentas, Macro Macros Selecione o nome da Macro. Clique no boto Opes e defina a tecla de atalho. Para executar a macro basta digitar a seqncia de teclas que foram definidas. Exemplo 1 Criaremos a planilha abaixo em cinco passos utilizando a gravao de Macros:

1 2 3 4 5
1 Passo Excel Avanado 2000 Captulo 4

A Nome Pedro Ana Bruno Paulo

B Salrio 1.200,00 5.000,00 230,00 1.300,00

Macros em linguagem Visual Basic

44

MAD - INFORMTICA
Ferramentas Macro, Macros Gravar Nova Macro D o nome da Macro de Cria_Tabela e digite a letra w para tecla de atalho e OK. Conforme tabela anterior, Clique na clula A1 e digite apenas os dados das clulas A1 at B5 , e ao final clique no boto Parar Gravao . Quando se inicia uma gravao de macro, o Excel cria uma instruo onde informado o nome da clula inicial (Range( A1 ).Select), por tanto se no incio da gravao a sua clula inicial j estiver selecionada, voc dever clicar em outra clula, iniciar a gravao e em seguida clicar na clula de incio. 2 Passo Siga novamente os passos para gravao de Macros e d o nome da Macro de Formata_Tabela e digite e para tecla de atalho e OK . Formate a tabela colocando Bordas nas clulas, Negritando e Centralizando os ttulos de Colunas e ao final, pare a gravao de macros. 3 Passo Repita a 1 Etapa e d a Macro o nome de Class_Nome e como tecla de atalho, a letra r . Clique na clula A2 e na Barra de Ferramentas Padro, clique no boto Classificao Crescente e pare a gravao de Macros. 4 Passo Repita a 1 Etapa e d a Macro o nome de Class_Salrio e como tecla de atalho, a letra R (R maisculo) Clique na clula B2 e classifique novamente em ordem crescente e pare a gravao de Macros. 5 Passo Repita a 1 Etapa e d a Macro o nome de Limpa_Tabela e como tecla de atalho, a letra D (D maisculo) Selecione toda a planilha conforme exemplo abaixo e em seguida clique no menu Editar/ Limpar/ Tudo, e pressione a tecla Del ou Delete e parar gravao.

1 2 3 4 5

A Nome Pedro Ana Bruno Paulo

B Salrio 1.200,00 5.000,00 230,00 1.300,00

Executando a Macro pelo Atalho


Insira uma nova Planilha e em seguida pressione CTRL + w (ser criada a tabela), pressione CTRL + e (A tabela ser formatada). Para classificar a tabela em ordem crescente pela coluna NOME pressione CTRL + e, e para classificar pela coluna SALRIO pressione CTRL + Shift + R. Para Limpar toda a planilha pressione CTRL + Shift + D.

Adicionando AutoFormas para executar a macro


Insira 4 figura para executar as macros utilizando a opo AutoFormas e Formas bsicas.

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

45

MAD - INFORMTICA

Cria Tabela

Formata Tabela

Classifica Nome

Classifica Salrio

Unindo Macros
Para visualizar a macro em linguagem Visual Basic: Ferramentas Macro Macros Clique na macro Cria_Tabela e em seguida, Editar, ser mostrado a tela a seguir:

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

46

MAD - INFORMTICA

Janela do Projeto

Janela de Propriedades

Programa VBA gerado pela gravao da Macro Cria_Tabela

Na janela de Programa, clique no Drop-down da barra de rolagem at visualizar a Macro Formata_Tabela, selecione todo o projeto menos Sub Formata_Tabela e End Sub, copie o projeto selecionado e em seguida v para a o projeto Cria_Tabela, posicione o cursor antes do End Sub e cole. Repita a operao para a macro Limpa_Tabela e cole antes da macro Cria_Tabela. Alterne para o Microsoft Excel e execute a macro Cria_Tabela CTRL + w e veja o resultado.

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

47

MAD - INFORMTICA
Captulo 4
MACROS EM LINGUAGEM VISUAL BASIC Definies e Conceitos.
No Excel as tarefas so automatizadas atravs de macros. Uma macro uma seqncia de tarefas que informam o que fazer. As instrues podem ser escritas usando os comandos do Excel ou atravs da linguagem Visual Basic. Apesar de no ser necessrio conhecer esta linguagem de programao (o Excel cria o cdigo atravs do gravador de macros, automaticamente, enquanto voc executa os comandos que deseja programar), este treinamento ir abordar como voc pode criar suas macros e como modific-las diretamente pelo seu cdigo. O Visual Basic permite criar comandos, menus, caixas de dilogos, mensagens e botes personalizados. Podemos transformar o aplicativo em um produto inteiramente diferente do Excel. Para detalhes mais completos voc dever dispor do manual Guia do Usurio do Visual Basic do Microsoft Excel , alm das referncias sobre o VBA encontradas na ajuda on-line. Este material de treinamento apenas um guia de aula e no contm todos os recursos, funes e comandos do VBA. O manual on-line pode ser encontrado teclando F1 ajuda e em seguida, no boto Tpicos de Ajuda, escolha o tpico desejado do Visual Basic (o arquivo VBA_XL.HLP ser carregado). Se voc j programa em Excel 7.0 ou anterior, (voc j dever ter notado que todo projeto foi modificado incluindo a base de programao, pois passou do portugus para o ingls acabando com aquelas incompatibilidades de traduo das rotinas em portugus para o ingls).

O Cdigo Visual Basic


Quando gravamos uma macro, o Excel cria uma srie de instrues equivalentes s aes realizadas. Podemos editar este cdigo, mas nem sempre ser o mais atraente, visto que normalmente usamos o gravador de macros para iniciar nosso trabalho. As instrues geradas seguem um padro consistindo de palavra-chave, operadores, variveis e chamadas de procedimentos. Sempre que desejar mais informaes sobre determinada palavra-chave, ilumine-a e tecle F1 ajuda. Chamamos sua ateno para o seguinte cdigo: Sub Macro2( ) ... End Sub Todo procedimento recebe um nome, por exemplo Sub MACRO2 seguido de parnteses e no final do mesmo temos a instruo End Sub indicando que aquela macro termina nesta linha. Todos os procedimentos podem ou no ser gravados em um nico mdulo. Comentrios podem ser inseridos no cdigo de uma macro usando apstrofo (aspas simples). O editor de cdigofonte ir apresent-lo na cor verde enquanto as instrues so colocadas em azul. O cdigo e referncias de variveis so colocados em preto. No menu Ferramentas Opes Guia: Formato do Editor podemos padronizar novas cores.

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

48

MAD - INFORMTICA
Inserindo cdigos em Macros.
Escreva o seguinte cdigo no projeto Alt+F11 Sub Entra_Dados( ) Message = "Informe seu nome" Title = "Entrada de dados" NomeCliente = InputBox(Message, Title) ActiveCell.FormulaR1C1 = NomeCliente End Sub Retorne planilha, insira um boto de comando (antes exiba a barra de ferramentas Formulrios ) e aplique esta macro ao boto. Selecione uma clula qualquer da planilha e em seguida clique o boto.

Uma caixa de dilogo de entrada de dados ser apresentada:

Aps clicar o boto OK, a clula atual ser preenchida com o valor digitado. Vamos analisar o cdigo Visual Basic: Sub Entra_Dados( ) Nome da Macro Message = "Informe seu nome" Insere o texto entre aspas na varivel Message Title = "Entrada de dados" Insere o texto entre aspas na varivel Title NomeCliente = InputBox(Message, Title) Chama uma funo do VB e descarrega as variveis Message e Title ActiveCell.FormulaR1C1 = NomeCliente Descarrega a varivel NomeCliente na clula ativa End Sub Finaliza a macro Podemos observar que a linguagem segue os padres da maioria das linguagens de programao da atualidade. Abordaremos os aspectos desta linguagem.

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

49

MAD - INFORMTICA
Objetos do Visual Basic.
Um objeto algo controlvel atravs do Visual Basic. Os objetos so usados para a realizao de tarefas no Excel praticamente da mesma forma como so usados no dia a dia. Por exemplo, um rdio um objeto usado para receber informaes; no Excel uma planilha um objeto usado para calcular e exibir informaes. Cada objeto possui suas prprias caractersticas que o tornam til ao usurio. No exemplo do rdio citamos a freqncia em que ele opera isto conhecido como uma das propriedades do objeto atributos que controlam a aparncia e funcionamento do mesmo. No Excel, a planilha possui suas propriedades, por exemplo, a visibilidade. Ela pode ou no ser visvel. Os objetos so blocos de construo do Excel ou de qualquer aplicativo. Voc os controla com o cdigo do Visual Basic. Eles so usados para executar tarefas no Excel do mesmo modo que na sua vida diria. Por exemplo, um caminho um objeto que transporta coisas; uma planilha um objeto que calcula e exibe informaes.

A seguir esto alguns objetos tpicos que voc pode usar no Excel:
Intervalo Planilha Pasta de Trabalho Menu Nome Estilo Uma clula ou um intervalo de clulas no qual voc digita uma frmula para obter valores Uma folha de uma pasta de trabalho que calcula e exibe informaes Um grupo de folhas que foi armazenado como um arquivo nico Uma lista de comandos com os quais voc pode executar aes Um identificador fcil de lembrar que se refere a uma clula, intervalo de clulas, valor ou frmula. Uma combinao de formatos para uma clula, incluindo sua fonte, cor, bordas e outros.

Assim como os objetos do dia a dia, os objetos do Excel possuem partes componentes (que, por sua vez tambm so objetos) que definem suas caractersticas e as tarefas que elas podem executar.

Propriedades dos Objetos


As propriedades so atributos nomeados de um objeto que definem as suas caractersticas (como tamanho, cor ou localizao na tela) ou seu comportamento (como por exemplo, se est ativado ou visvel). Para mudar um objeto, voc deve mudar os valores de suas propriedades.

Retornando o valor de uma propriedade.


Voc pode obter informaes sobre um objeto, retornando o valor de uma de suas propriedades. As instrues a seguir mostram o contedo da clula A1 em uma janela de dilogo. Sub Mostra_Contedo() Conteudo = Range( A1 ) MsgBox Conteudo Excel Avanado 2000 Captulo 4 Macros em linguagem Visual Basic

50

MAD - INFORMTICA
End Sub

Executando aes com mtodos de objetos


Os mtodos so comandos que voc envia para um objeto (uma ao que o objeto sabe como executar). A instruo a seguir usa o mtodo Selecionar do objeto intervalo para selecionar a clula A1. (Selecionar uma ao que o objeto intervalo sabe como executar). Range ( A1 ).Select

Objetos como recipientes de outros objetos.


O Excel composto de muitos objetos pastas de trabalho, planilhas, folhas de grfico e outros alguns dos quais contm outros objetos. Um objeto pode conter um outro objeto simplesmente por estar hierarquicamente acima ou ser maior do que o outro. Uma pasta de trabalho contm planilhas; planilhas contm linhas e colunas; linhas e colunas contm intervalos de clulas separados.

O Objeto Aplicativo
O objeto de nvel mais alto o objeto Aplicativo. Ele contm todos os outros objetos que compem o aplicativo. Quando voc define propriedades ou executa mtodos do objeto Aplicativo, os resultados afetam toda a sesso do Excel. A instruo a seguir usa o mtodo Encerrar para finalizar o Excel. Aplication.Quit

Navegando entre objetos em um Recipiente


Assim como voc usa um ponto para identificar uma propriedade ou mtodo de um objeto, tambm usa o ponto para navegar de um objeto recipiente para um objeto dentro do recipiente. A instruo a seguir identifica o objeto Pastas Trabalho que est dentro do objeto Aplicativo e fecha todas as pastas de trabalho abertas. ActiveWorkBook.Close

Coleo de Objetos
As colees de objetos so mais um exemplo de um objeto que contm outro objeto. As colees so objetos especiais que contm vrios objetos, os quais so todos do mesmo tipo. Na instruo anterior, Pastas de Trabalho uma coleo de porqu contm objetos (Pasta de Trabalhos Individuais). As colees esto sempre no plural (Planilhas, Eixos e assim por diante). O Visual Basic fornece instrues que facilitam o trabalho com colees. A instruo For Each...Next executa um ciclo atravs de cada objeto de uma coleo. As instrues a seguir criam uma nova planilha e, em seguida, a insere em uma lista de todos os nomes de tabelas definidas, incluindo as clulas incio e fim da tabela a partir da clula A1. Sub Mostra_tabela() Set novaPlan = ActiveWorkbook.Worksheets.Add i=1 For Each nm In ActiveWorkbook.Names NovaPlan.Cells(i,1).value = nm.NameLocal NovaPlan.cells(i,2).Value = & nm.RefersToLocal i=i+1 Next nm End Sub

Excel Avanado 2000

Captulo 4

Macros em linguagem Visual Basic

51

MAD - INFORMTICA
Trabalhando com objetos especficos em recipientes ou colees
Muitas vezes, voc vai desejar trabalhar com um objeto especfico de uma coleo e no com a coleo inteira. Trabalhar com uma coleo e semelhante a trabalhar com uma matriz; voc pode identificar um item dentro dela, colocando um nome ou nmero entre parnteses. A instruo a seguir, ActiveWorkBook identifica a pasta de trabalho ativa e o mtodo Close finaliza esta pasta de trabalho. ActiveWorkBook.Close Vrias propriedades retornam objetos, inclusive clula ativa. Este recurso pode reduzir seu cdigo drasticamente, facilitando a leitura. ActiveCell = Oi! O Valor de uma propriedade pode ser texto, numrico ou lgico.

Um objeto INTERVALO pode consistir de: Uma clula Uma linha ou coluna Uma ou mais selees de clulas Um intervalo 3-D A forma mais comum de se identificar um objeto INTERVALO atravs do mtodo CLULAS, o qual retorna um objeto INTERVALO (que uma coleo de clulas). Como as clulas esto dispostas em linhas/colunas podemos usar 2 ndices para especificar uma clula. Por exemplo, para identificar a clula C4 e atribuir a ela um valor, usamos: Cells(4, C ).value = 31 Ou se preferir: Cells(4,3).value = 31 Neste caso o usamos o nmero referente coluna. O procedimento abaixo cria uma tabela anual: Sub Monta_Tabela() For AnoTitulo = 1 To 5 Cells(1, AnoTitulo + 1) = 1990 + AnoTitulo Next AnoTitulo For TrimestreTitulo = 1 To 4 Cells(TrimestreTitulo + 1, 1).Value = TrimestreTitulo & " Trim" Next TrimestreTitulo End Sub

Trabalhando com o objeto intervalo.


Seguem-se vrios exemplos de como usar as propriedades e os mtodos mais importantes do objeto intervalo.

Mtodo Clulas
Use o mtodo clulas para retornar uma nica clula, conforme mostrados nos exemplos a seguintes: Cells(1, 1).value = 44 Cells(2, 1) = Excel Avanado 2000 =sum(B1.B5) Captulo 4 Definir o valor da clula A1 como 44 Inserir uma frmula na clula A2

Macros em linguagem Visual Basic

52

MAD - INFORMTICA
Captulo 5
PROGRAMANDO EM LINHA COM O VBA
Usaremos os seguintes comandos para criarmos um cadastro de clientes: Variveis que iremos utilizar: nome = Nome do Cliente endereco = Endereo do Cliente cidade = Cidade do Cliente estado = Unidade de Federao do Cliente cep = CEP do Cliente telefone = Telefone do Cliente

Etapa 1
Sub Cadastro ( ) Title = Cadastro de Clientes Message = Informe o nome do Cliente nome = InputBox(Message, Title) Cells(2, 1) = nome Message = Informe o Endereo do Cliente endereco = InputBox(Message, Title) Cells(2, 2) = endereco Message = Informe a Cidade do Cliente cidade = InputBox(Message, Title) Cells(2, 3) = cidade Message = Informe a Unidade de Federao do Cliente estado = InputBox(Message, Title) Cells(2, 4) = estado Message = Informe o CEP do Cliente cep = InputBox(Message, Title) Cells(2, 5) = cep End Sub

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

53

MAD - INFORMTICA
Volte Para o Excel e Crie a seguinte planilha:

Crie um boto e adicione a macro cadastro e em seguida a execute e veja o resultado.

Etapa 1a
Com o programa da etapa 1 s podemos inserir um nico registro, vamos agora adicionar novas linha de programao para que possamos inserir n registro ( n = 65.563). Insira as linhas que esto em destaque: Sub Cadastro ( ) `Este comando faz com que o Excel insira uma nova linha a cada entrada de dados

Range( a2:f2 ).Select Selection. Insert


Title = Cadastro de Clientes Message = Informe o nome do Cliente nome = InputBox(Message, Title) Cells(2, 1) = nome Message = Informe o Endereo do Cliente endereco = InputBox(Message, Title) Cells(2, 2) = endereco Message = Informe a Cidade do Cliente cidade = InputBox(Message, Title) Cells(2, 3) = cidade Message = Informe a Unidade de Federao do Cliente estado = InputBox(Message, Title) Execute novamente a Macro e veja o resultado

Etapa 2
Criaremos a seguir uma planilha para executar um pedido de cliente, volte ao Excel e crie uma nova planilha como se segue e a d o nome de Pedido:

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

54

MAD - INFORMTICA
Escreva as seguintes frmulas nas clulas E7 e F7 consecutivamente: =SOMA(E2:E6) e = SOMA(F2:F6) V ao menu Ferramenta, Macro/ Gravar nova Macro, e d a macro o nome de frmulas, em seguida clique na clula B2 e digita a seguinte frmula: =PROCV(A2;PRODUTO;2;FALSO) Usando a ferramenta de Auto-Preenchimento, copie a frmula at a clula B6 . Clique na clula D2 e digite a seguinte frmula: = PROCV(A2;PRODUTO;3;FALSO) Repita o comando de Auto-Preenchimento, e copie a frmula at a clula D6 .

Pare a gravao da Macro.

Etapa 2a
Crie tambm uma planilha para ser usada como Banco de Dados e d a ela o nome de Produtos:

Selecione a nova planilha e defina o seu nome de Produto V ao menu Ferramentas, Macro e Macros e d a nova Macro o nome de Pedido_Cliente e em seguida, escreva o programa abaixo:

Sub Pedido_Cliente( ) Title = "Pedido de Cliente" Message = "Digite o Cdigo do Produto" produto = InputBox(Message, Title) Cells(3, 1) .Value = produto Message = "Digite a quantidade do Produto" quantidade = InputBox(Message, Title) Cells(3, 3) .Value = quantidade End Sub Excel Avanado 2000 Captulo 5 Programando em linha com VBA

55

MAD - INFORMTICA
Volte para a planilha Pedido, crie um novo boto s que agora, um boto na barra de ferramentas desenho:

1) Clique no menu Exibir , Barra de Ferramenta e Personalizar , aparecer a seguinte janela de dilogo: Clique na guia Comandos e selecione a categoria MACROS , Clique no cone Carinha Feliz , mantenha o clique pressionado e a arraste at a barra de Ferramentas Desenho e solte-o em seguida.

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

56

MAD - INFORMTICA
Vamos falar um pouco sobre o boto personalizado: Voc pode edita-lo, modifica-lo ou simplesmente desenhar um novo boto ou ainda, escolher um novo boto j formatado pelo Excel como mostramos no exemplo abaixo:

Novo Boto Inserido

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

57

MAD - INFORMTICA
Aps a escolha do boto, insira ao boto a macro Pedido_Cliente, execute-a e veja o resultado. Podemos notar que s ser inserido um nico pedido, portanto vamos criar um luping para que seja inseridos cinco pedidos:

Etapa 2b
Acrescente as linhas e alteraes em destaque no programa:

Sub pedido_Cliente( ) L=2 C=1 For i = 1 To 5 Title = "Pedido de Cliente" Message = "Digite o Cdigo do & i & Produto" produto = InputBox(Message, Title) Cells(L, C) .Value = produto Message = "Digite a quantidade do & i & Produto" quantidade = InputBox(Message, Title) Cells(L, C + 2) .Value = quantidade L=L+1 Next i End Sub

Execute novamente a macro, e veja o resultado: O comando For Next (Para, Prximo), provoca um luping que s ser finalizado quando i , atingir o valor de 5 .

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

58

MAD - INFORMTICA
Voc deve ter notado, que 5 pedidos tero que ser inseridos ao pedido, e se o cliente quiser apenas dois itens? Vamos ento mudar a linha de programa para que voc possa interromper o programa inserindo um cdigo em branco assim que quiser interromper o pedido.

Etapa 2c
Adicione as linhas de programa em destaque e em seguida, execute novamente a Macro e veja o resultado:

Sub pedido_Cliente( ) L=2 C=1 For i = 1 To 5 Title = "Pedido de Cliente" Message = "Digite o Cdigo do & i & Produto" produto = InputBox(Message, Title) Cells(L, C) .Value = produto If produto = Then I =5 Else Message = "Digite a quantidade do & i & Produto" quantidade = InputBox(Message, Title) Cells(L, C + 2) .Value = quantidade End If Next i End Sub

Com o comando If, determinamos que se o varivel produto obtiver o valor de 5, ento i ser 5, finalizando assim o luping reconhecido pelo comand Next encerrando o programa.

Excel Avanado 2000

Captulo 5

Programando em linha com VBA

59

MAD - INFORMTICA
Captulo 6
PROGRAMANDO OBJETOS EM VBA
Salve e Feche todos os arquivos e abra um novo com o nome de PROGRAMANDO OBJETOS para no confundirmos com as variveis e as macros utilizadas anteriormente. Programar objetos torna-se mais fcil visualizao e busca de erros que possa ocorrer durante a programao. Utilize o menu Ferramentas, Macros e Editor do Visual Basic ou Pressione Alt + F11 para entramos no Microsoft Visual Basic. Aparecer a janela abaixo onde inicialmente vamos inserir um formulrio clicando em Inserir UserForm.

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

60

MAD - INFORMTICA
O Excel mostrar o Formulrio do Usurio (UserForm) e a Caixa de Ferramentas:

Caixa de Ferramentas

(UserForm) Formulrio do Usurio

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

61

MAD - INFORMTICA
Vamos conhecer os botes que iremos utilizar a Caixa de Ferramentas:
Caixa de Combinao Seleo de Objetos Moldura

Rtulo

Boto de Comando Boto de Opo Caixa de Texto

Monte o UserForm conforme exemplo abaixo:


Formulrio Name = Cadastro Caption = Cadastro de Clientes Moldura Caption = Insira abaixo os dados do Cliente Rtulo - Caption = Nome do Cliente Caixa de Texto Name = Nome Rtulo - Caption = Endereo Caixa de Texto Name = Endereco Rtulo Caption = Cidade Caixa de Texto Name = Cidade Rtulo Caption = Estado Caixa de Texto Name = Estado Rtulo Caption = CEP Caixa de Texto Name = cep Rtulo Caption = Telefone Caixa de Texto Name = Telefone Boto de Comando Name = Proximo Caption = PRXIMO Boto de Comando Name = OK Caption = OK Boto de Comando Name = Cancela Capiton = CANCELA

O Comando Caption Insere texto ao formulrio, Caixas de Seleo e outros. O Comando Name nomeia a Caixa de Formulrio e declara variveis nas Caixas de Texto.

Aps a montagem do UserForm, volte ao Excel salve o arquivo e crie uma nova planilha conforme abaixo e d a ela o nome de Cadastro .

Iremos agora programar os botes de comando do formulrio Cadastro de Clientes. Volte ao Projeto do Microsoft Visual Basic Alt + F11 Clique duas vezes no boto PRXIMO e escreva o programa conforme abaixo:

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

62

MAD - INFORMTICA

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

63

MAD - INFORMTICA
Este comando faz com que toda vez que o boto Prximo for ativado, todas as variveis sero descarregadas em suas respectivas clulas, em seguida o formulrio Cadastro fechado (Unload Cadastro) e aberto novamente (Cadastro.Show) para que novos registros possam ser inseridos. Para programar o boto OK, selecione as linhas de programa a partir de: Worksheets( Cadastro ).Select ate Unload Cadastro Ative o formulrio Cadastro clicando duas vezes e em seguida clique duas vezes no boto OK, cole o programa copiado anteriormente. Para programar o boto CANCELA, clique duas vezes no boto respectivo e escreva a linha de programa abaixo para cancelar a incluso no cadastro: Unload Cadastro Vamos agora executar o formulrio Cadastro e veja o resultado testando todos os botes: Clique no boto Executar User/SubForm localizado na Barra de Ferramentas do Microsoft Visual Basic.

Executar User/SubForm

Interromper

Redefinir

Modo de Criao

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

64

MAD - INFORMTICA
Crie agora o Formulrio Pedido de Cliente conforme exemplo abaixo:
Formulrio Name = Pedido Caption = Pedido de Clientes Moldura Caption = Curso Excel Avanado Rtulo Caption = Informe o Cdigo do Produto Caixa de Texto Name: Codigo Rtulo - Caption = Informe a Quantidade do Produto Caixa de Texto Name = Quantidade Boto de Comando Name = Proximo Caption = PRXIMO Boto de Comando Name = OK Caption = OK Boto de Comando Name = Cancela Capiton = CANCELA

Volte para o Excel. Como j fizemos a algumas pginas atrs, insira uma nova planilha para ser usada como Banco de Dados e d a ela o nome de Produtos:

Selecione a nova planilha e defina o seu nome de Produto

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

65

MAD - INFORMTICA
Insira uma nova planilha e d a ela, o nome de Pedido . Usando o recurso Gravar Nova Macro Ferramentas, Macros e Gravar nova Macro (D o nome da Macro de Cria_Pedido ). Conforme exemplo abaixo crie a seguinte planilha incluindo sua formatao:

Na clula E4 e F4 , escreva as frmulas: = SOMA(E2:E3) e =SOMA(F2:F3) Pare a Gravao da Macro Clique novamente no Menu Ferramentas, Macros e Gravar nova Macro e d a macro o nome de Frmulas, Clique na clula B3 e escreva a seguinte Frmula: =PROCV(A3;PRODUTO;2;FALSO) Clique na clula D3 e escreva a seguinte frmula: =PROCV(A3;PRODUTO;3;FALSO) Clique na clula E3 e escreva a seguinte frmula: =SOMA(C3*D3) Clique na clula F3 e escreva a seguinte frmula: =SOMA(E3*DOLAR) Pare a gravao da Macro

Volte para o projeto ( Alt + F11 ) e clique duas vezes no formulrio Pedido . Vamos agora, programar os botes PRXIMO, OK e CANCELA .

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

66

MAD - INFORMTICA
Clique duas vezes no boto PRXIMO e escreva as linhas de programa:

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

67

MAD - INFORMTICA
No menu FERRAMENTAS, selecione Macros e clique na Macro Frmulas e mande edita-la. Selecione as linhas de programas como mostrado abaixo e em seguida copie-a.

Volte para o formulrio Pedido e cole a macro copiada antes da instruo Unload Pedido , conforme mostrado abaixo:

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

68

MAD - INFORMTICA
Para programar o boto OK , copie o programa do boto PRXIMO , do primeiro Range at Unload Pedido e em seguida clique duas vezes no boto OK e cole o programa. Para programar o boto CANCELA , clique duas vezes e escreva o comando de interrupo Unload Pedido .

Teste o formulrio Pedido Criaremos agora os seguintes formulrios: Formulrio Cotao do dlar cujo Name dever ser Cdolar. Este formulrio permitir a insero e ou verificao do novo valor do dlar.

D o Name de DolarAT para a caixa de texto Valor do dlar, dolar para a caixa de texto Novo Valor do Dlar, ok para o boto OK e cancela para o boto CANCELA.

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

69

MAD - INFORMTICA
Digite o programa abaixo para os botes OK e CANCELA

Para capturarmos o contedo de uma clula descarrega-lo em uma caixa de texto insira o seguinte comando em ControlSourse localizado na janela de Propriedades DolarAT: O comando a seguir, ir buscar a clula definida com o nome de dolar que voc poder defini-la agora na clula E1 da planilha Produto. produto!dolar

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

70

MAD - INFORMTICA
Formulrio de Impresso Este formulrio permite a impresso do Pedido .

D o Name de sim para o boto de opo Sim e no para o boto de opo No. Escreva o programa abaixo para os Botes de Opes Sim e No:

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

71

MAD - INFORMTICA
Formulrio Menu Principal , este formulrio ser o principal, a partir dele sero chamados todos os outros.

D o Name nos Botes de Opes Criar para Criar Novo Pedido, Cadastrar para Cadastrar Novo Cliente, Inserir para Inserir Novo Valor do Dlar e Sair para Sair do Menu Principal. Para programarmos o Boto de Opo anteriormente. Criar Novo Pedido , iremos colar a Macro Cria Pedido gravada

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

72

MAD - INFORMTICA
Acrescente no incio do programa do boto de Opo Criar Novo Pedido as seguintes linhas: WorkSheets( Pedido ).Select Cells.Select Selection.Clear Range( A1 ).Select Estes comandos faro com que a planilha Pedido seja selecionada e limpa para que se inicie um novo Pedido Acrescente ao final do programa do boto de Opo Criar Novo Pedido as seguintes linhas: Range( D2:F6 ).Select Selection.Style = Comma Range( A1 ).Select Estes comandos formataro as clulas selecionadas para receberem casas decimais e separadores de milhares. Unload Menu Pedido.Show Para programarmos o Boto de Comando Cadastrar Novo Cliente , insira as linhas de programa abaixo: Unload Menu Cadastro.Show Para programarmos o Boto de Comando Inserir Novo Valor do Dlar , insira as linhas de programa abaixo: Unload Menu Cdolar.Show

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

73

MAD - INFORMTICA
Para programarmos o Boto de Comando Sair do Menu Principal , insira a linha de programa abaixo:

Unload Menu

Teste o formulrio Menu

Volte para o Excel Crie um boto de Execuo e atribua a ele uma nova Macro cujo nome daremos de Inicia que dever conter a seguinte linha de comando:

Menu.Show

Excel Avanado 2000

Captulo 6

Programando objetos em VBA

74

This document was created with Win2PDF available at http://www.win2pdf.com. The unregistered version of Win2PDF is for evaluation or non-commercial use only.

Anda mungkin juga menyukai