87
LibreOffice Calc Avançado Ueritom Ribeiro Borges Revisor: Klaibson Natal Ribeiro Borges 1

macros libreoffice.pdf

Embed Size (px)

Citation preview

  • LibreOffice Calc Avanado

    Ueritom Ribeiro Borges

    Revisor: Klaibson Natal Ribeiro Borges

    1

  • Direitos Autorais

    Este documento protegido por Copyright 2010 por seus contribuidores listados abaixo. Voc

    pode distribuir e/ou modificar este trabalho, tanto sob os termos da Licena Pblica Geral GNU

    (http:// www.gnu.org / licenses /gpl.html ), verso 3 ou posterior, ou da Licena de Atribuio Creative

    Commons (http:// creativecommons.org / licenses /by/3.0/ ), verso 3.0 ou posterior.

    Todas as marcas comerciais dentro desse guia pertencem aos seus respectivos donos.

    O trabalho LibreOffice Calc Avanado de Ueritom Ribeiro Borges e (revisor) Klaibson Natal

    Ribeiro Borges foi licenciado com uma Licena Creative Commons - Atribuio 3.0 No Adaptada.

    Contribuidores

    Ueritom Ribeiro Borges

    Klaibson Natal Ribeiro Borges (Revisor)

    Feedback

    Por favor, direcione qualquer comentrio ou sugesto sobre este documento para:

    [email protected] e/ou [email protected]

    2

  • Uma Palavra Para Voc

    Talvez ns nunca venhamos a lhe conhecer, mas escrevemos este livro pensando em ajudar

    VOC no seu trabalho, seja no seu escritrio, sala de aula ou escrevendo um livro, assim como eu

    fiz.

    Este e-book gratuito at as primeiras 1000 cpias. Mas se a sua leitura lhe ajudar em algo,

    agradeceria se voc pudesse comprar uma edio impressa no site

    http://www.clubedosautores.com.br , pesquise por LibreOffice Calc Avanado, LibreOffice ou pelo

    nome dos autores.

    Muito obrigado antecipadamente pela sua participao.

    UERITOM RIBEIRO BORGES

    KLAIBSON NATAL RIBEIRO BORGES (Revisor)

    3

  • Agradecimentos

    Queremos agradecer a Deus, que nos orientou e nos guiou at conhecer o Software Livre

    atravs do antigo BrOffice.Org a agora LibreOffice

    Quero agradecer nossa me, Bertolina Maffei, pela inspirao que ela sempre nos foi dada,

    pois escreveu um livro com poucos recursos na poca (1996) e sempre quisemos fazer a mesma

    coisa e agora conseguimos. Acompanhem seu blog www.beleza-e-natureza.blogspot.com

    Quero agradecer aos desenvolvedores, alunos, grupo de usurios e tantas pessoas que

    esqueci de mencionar, que de um forma ou de outra, nos inspiraram na criao desse livro.

    4

  • Os Autores

    Ueritom Ribeiro Borges

    Professor de informtica na Micromix Formao Profissional, em Palhoa/SC e entusiasta

    da informtica. Trabalha tambm com lngua inglesa, onde possui dois blogs:

    www.inglesparaleigos.com e www.inglescommusica.net, que possuem tambm suas respectivas

    pginas no Facebook: www.facebook.com/inglesparaleigos e

    www.facebook.com/inglescommusica.

    Klaibson Natal Ribeiro Borges

    Ps-graduando em Gerncia de Projetos de TI e Administrao de Empresas, ambos Unisul,

    Universidade do Sul de Santa Catarina, professor do Senai/SC, Unidade So Jos nos cursos de

    Aprendizagem Industrial e diversos Cursos Tcnicos.

    Trabalhou em diversas escolas profissionalizantes como instrutor de informtica e rotinas

    administrativas entre os anos de 2004 2009.

    Possui o blog, www.libreofficeparaleigos.org, tambm escreveu o ebook LibreOffice Para

    Leigos, superando os 11 mil downloas.

    Facebook: www.facebook.com/livreoffice e Twitter: @liboparaleigos

    5

  • SUMRIONDICE DE ILUSTRAES...............................................................................2

    1. FUNES INTERMEDIRIAS E AVANADAS........................................6

    1.1 FUNO SE...............................................................................................8

    1.2 FUNO CONT.SE.................................................................................13

    1.3 FUNO SOMASE.................................................................................16

    1.4 FUNO CONT.NM............................................................................19

    1.5 FUNO CONT.VALORES...................................................................20

    1.6 FUNES E E OU...................................................................................21

    1.7. FUNO PROCV...................................................................................27

    2. RECURSOS ADICIONAIS DO CALC..........................................................31

    2.1 AUTOFILTRO..........................................................................................31

    2.2 CLASSIFICAR DADOS...........................................................................37

    2.3 VALIDAO...........................................................................................40

    2.4 DEFINIR NOMES....................................................................................47

    2.5 PROTEGER CLULAS...........................................................................49

    2.6 EXERCCIOS...........................................................................................53

    3. ASSISTENTE DE DADOS............................................................................54

    3.1 TABELA DINMICA..............................................................................54

    3.2 CRIANDO GRFICOS A PARTIR DE UMA TABELA DINMICA. .66

    3.3 EXERCCIOS...........................................................................................74

    4. MACROS........................................................................................................75

    4.1 PROGRAMANDO MACROS E FUNES....................................80

    4.2 - CRIANDO FUNES CALC NO BASIC........................................84

    6

  • NDICE DE ILUSTRAES

    Figura 1 Lista de categorias................................................................................6

    Figura 2 Tabela onde ser utilizada a funo SE...............................................8

    Figura 3 Funo SE............................................................................................9

    Figura 4 Exemplo de preenchimento da funo SE.........................................10

    Figura 5 Resultado da funo SE.....................................................................10

    Figura 6 Outro exemplo usando a funo SE...................................................11

    Figura 7 Funo SE usando frmulas...............................................................12

    Figura 8 Planilha de reajuste preenchida..........................................................12

    Figura 9 Tabela de exemplo da funo CONT.SE...........................................13

    Figura 10 Tabela de apoio................................................................................13

    Figura 11 Janela de configurao da funo CONT.SE...................................14

    Figura 12 Preenchimento da funo CONT.SE...............................................15

    Figura 13 Exemplo para utilizao da funo SOMASE.................................16

    Figura 14 Tabela de apoio para a funo SOMASE........................................17

    Figura 15 Preenchimento da funo SOMASE................................................18

    Figura 16 Tabela preenchida com o uso da funo SOMASE.........................18

    Figura 17 Tabela de apoio da funo CONT.NM.........................................19

    Figura 18 Comparativo entre CONT.NM e CONT.VALORES...................20

    Figura 19 Tabela verdade das funes E e OU................................................22

    Figura 20 Tabela de controle de horas.............................................................23

    Figura 21 Exemplo do resultado da funo enquanto o preenchimento est incompleto23

    Figura 22 Resolvendo o problema do preenchimento incompleto...................24

    Figura 23 Resultado da funes SE e OU........................................................25

    Figura 24 Exemplo para uso da funo E com a funo SE............................25

    Figura 25 Preenchendo a frmula para selecionar os clientes..........................26

    Figura 26 Tabela preenchida com as funes E e SE.......................................26

    Figura 27 Tabela de exemplo para uso da funo PROCV..............................27

    Figura 28 Exemplo de preenchimento da funo PROCV...............................28

    Figura 29 Exemplo de tabela preenchida com o auxlio de PROCV...............29

    Figura 30 Corrigindo mensagem de erro..........................................................29

    Figura 31 Tabela de exemplo para uso do recurso AutoFiltro.........................31

    Figura 32 Opes de um dos menus de Filtragem...........................................32

    7

  • Figura 33 Exemplo de uso de Filtro Simples...................................................32

    Figura 34 Exemplo de mais de uma filtragem.................................................33

    Figura 35 Caixa de dilogo Filtro Padro........................................................33

    Figura 36 Exemplo de uso de filtro simples com filtro padro........................34

    Figura 37 Exemplo de filtro usando mais de uma condio............................35

    Figura 38 Resultado de filtragem usando mais de uma condio (Operador E)35

    Figura 39 Exemplo de filtro com operador OU...............................................36

    Figura 40 Resultado da filtragem usando operador OU...................................36

    Figura 41 Tabela de exemplo para recurso Classificar Dados.........................37

    Figura 42 Caixa de dilogo Classificar Dados.................................................38

    Figura 43 Tabela depois de classificada...........................................................38

    Figura 44 Exemplo de classificao usando dois critrios...............................39

    Figura 45 Janela de Validao de dados..........................................................40

    Figura 46 Validando clulas selecionadas........................................................41

    Figura 47 Lista contendo os valores validados................................................42

    Figura 48 Mensagem de erro padro de validao...........................................42

    Figura 49 Janela para personalizao da mensagem de erro............................43

    Figura 50 Exemplo da opo Parar..................................................................43

    Figura 51 Exemplo da opo Aviso.................................................................44

    Figura 52 Outro exemplo de validao............................................................45

    Figura 53 Definir Nomes..................................................................................47

    Figura 54 Tabela de apoio para Definir Nomes...............................................47

    Figura 55 Janela de digitao de senha para proteo da planilha...................49

    Figura 56 No possvel modificar clulas protegidas....................................50

    Figura 57 Planilha utilizada para exemplo de proteo de clulas...................50

    Figura 58 Janela de desproteo de clulas......................................................51

    Figura 59 Exemplo de frmula aparecendo, mesmo a clula estando bloqueada52

    Figura 60 Frmula Oculta................................................................................52

    Figura 61 Tabela de exemplo para Assistente de Dados..................................54

    Figura 62 Selecionando a origem dos dados....................................................54

    Figura 63 Layout do Assistente de dados.........................................................55

    Figura 64 Resultado do assistente de dados.....................................................56

    Figura 65 Outro exemplo de tabela dinmica..................................................57

    Figura 66 Mais um exemplo de tabela dinmica..............................................58

    8

  • Figura 67 Janela para seleo da funo do Campo de Dados.........................59

    Figura 68 Alterando a funo da tabela dinmica............................................59

    Figura 69 Mensagem informando que no possvel alterar dados na tabela dinmica 60

    Figura 70 Exemplo mostrando que a tabela dinmica no atualizada automaticamente

    .........................................................................................................................................61

    Figura 71 Opo que atualiza a tabela dinmica..............................................61

    Figura 72 Tabela dinmica atualizada..............................................................62

    Figura 73 Janela de filtragem para tabelas dinmicas......................................62

    Figura 74 Exemplo de configurao de filtro para Tabela Dinmica..............63

    Figura 75 Resultado de filtragem na tabela dinmica......................................63

    Figura 76 Exemplo de atualizao da filtragem com atualizao dos valores.64

    Figura 77 Outro exemplo de atualizao da filtragem com atualizao dos valores 65

    Figura 78 Assistente de grfico Escolha do tipo de grfico..........................66

    Figura 79 Escolha do intervalo de dados..........................................................67

    Figura 80 Intervalo que deve ser selecionado (em amarelo)............................68

    Figura 81 Assistente de grfico personalizao das sries de dados.............69

    Figura 82 Assistente de grfico Escolhendo ttulos e legendas.....................70

    Figura 83 Assistente de grfico - exemplo de preenchimento dos Elementos do grfico

    .........................................................................................................................................71

    Figura 84 Grfico depois de pronto..................................................................71

    Figura 85 Janela de escolha de tipo de grfico.................................................72

    Figura 86 Configurao do preenchimento do grfico.....................................73

    Figura 87 Exemplo de grfico formatado.........................................................73

    Figura 88 Janela de gravao de macro............................................................75

    Figura 89 Tabela para exemplo de utilizao de macros.................................75

    Figura 90 Exemplo de configurao de macros...............................................76

    Figura 91 Janela para salvar a macro...............................................................76

    Figura 92 Janela de seleo de macros.............................................................77

    Figura 93 Macro aps executada......................................................................77

    Figura 94 Excluindo Macros............................................................................78

    Figura 95 Tabela para utilizao de novo exemplo de macro..........................78

    Figura 96 Janela Colar Especial.......................................................................79

    Figura 97 Tabela aps utilizao da macro......................................................79

    Figura 98 Janela de edio do LibreOffice Basic.............................................80

    9

  • Figura 99 Cdigo para Macro..........................................................................84

    Figura 100 - Macro em execuo - parte 1..........................................................84

    Figura 101 Macro em execuo parte 2........................................................84

    Figura 102 Exemplo de tabela para demonstrao de funes........................86

    Figura 103 Exemplo de cdigo criado para uma funo personalizada...........87

    Figura 104 Exemplo de utilizao de funo criada pelo usurio....................88

    Figura 105 Exemplo para criao de funo para clculo do IMC..................88

    Figura 106 Exemplo da funo do IMC no BASIC.........................................88

    Figura 107 Funo IMC aps preenchida........................................................89

    10

  • 1. FUNES INTERMEDIRIAS E AVANADAS

    O LibreOffice Calc possui inmeras funes, com as mais diversas utilidades e nveis de

    dificuldades diferentes. Essas funes so separadas por categorias, que so as seguintes:

    Banco de dados;

    Data e hora;

    Financeiras;

    Informaes

    Lgicas;

    Matemticas;

    Matriciais;

    Estatsticas;

    Planilha;

    Texto;

    Suplemento.

    Figura 1 Lista de categorias

    A lista da figura acima pode ser localizada ao acessar o Assistente de Funes (boto

    ). Ao selecionar uma categoria, o assistente mostra apenas as funes que pertencem quela

    categoria. Alm disso, existem tambm as opes Todas as Funes, que mostra a lista completa

    11

  • independente de categoria, e Recm Utilizadas, que mostra apenas as que foram usadas

    recentemente. Neste captulo veremos algumas das funes mais utilizadas, onde ser dada uma

    breve descrio da mesma, alm de ser informado qual categoria pertence e sero utilizados

    exemplos, para melhor compreenso.

    12

  • 1.1 FUNO SE

    Essa funo pertence categoria lgicas, e utilizada quando queremos que o Calc faa

    uma comparao de valores e retorne um texto, nmero ou faa um clculo dependendo do

    resultado da comparao. A funo efetua um teste (que geralmente feito comparando uma clula

    com um valor de referncia), e este teste retornar verdadeiro ou falso.

    Esta funo possui trs parmetros:

    Teste (obrigatrio): a comparao que ser feita para verificar se a condio

    verdadeira ou falsa. Para isso, podem ser utilizados os operadores > (maior que), <

    (menor que), = (igual), >= (maior ou igual a),

  • Deve-se ento preencher os valores Teste, valor_ento e valor_seno. Em teste, deve-

    se colocar que se est verificando e o valor que se est comparando (valor de referncia). Em nosso

    exemplo, o valor que est sendo verificado a Mdia, que est em F2, e o valor de referncia 7,

    pois a mdia mnima desejada 7. Como a mdia deve ser maior ou igual a 7 para que o aluno seja

    aprovado em cada disciplina, deve-se digitar ento F2 >= 7 no campo Teste.

    Como no sabemos de antemo se essa condio ser verdadeira ou falsa (e tambm

    porque o valor pode variar), temos que prever as duas situaes. Para isso existem os campos

    Valor_ento, que prev o que dever ser feito quando o teste resultar verdadeiro, e Valor_seno,

    que prev caso seja falso. Neste exemplo ser preenchido APROVADO para Valor_ento

    (sempre que for um texto, dever ser colocado entre aspas) e REPROVADO para Valor_seno.

    A janela dever ficar assim:

    14

    Figura 3 Funo SE

  • Figura 4 Exemplo de preenchimento da funo SE

    Na clula G2 aparecer escrito REPROVADO, pois a mdia em F2 6,8 que menor

    que 7, resultando portanto em FALSO. Caso seja alterada alguma das notas para cima, de modo que

    a mdia fique superior a 7, o valor de G2 mudar automaticamente para APROVADO, pois a

    condio passar a ser verdadeira.

    Aps isso, pode-se copiar a frmula de G2 e copiar para as clulas abaixo dela, que o

    Calc atualizar a frmula para as linhas correspondentes, e a planilha ficar como na figura abaixo:

    Figura 5 Resultado da funo SE

    No exemplo acima, foi utilizado apenas texto para os resultados VERDADEIRO e FALSO

    desta funo. No entanto, nada impede que no lugar disso sejam utilizados nmeros e at mesmo

    outras frmulas e/ou funes.

    Vejamos outro exemplo:

    15

  • Figura 6 Outro exemplo usando a funo SE

    Suponha que a tabela acima seja a folha de pagamento de uma empresa, e que todos

    recebero reajuste salarial baseado no seu salrio, de acordo com a lista a seguir:

    Para quem ganha at R$1.400, o reajuste ser de 10%;

    Para quem ganha acima desse valor, o reajuste ser de 7%.

    O valor de referncia nesse novo exemplo R$1.400, portanto o teste ser B2

  • Para calcular o valor do salrio reajustado (D2), usa-se a frmula =B2+C2, pois o valor do

    novo salrio ser o salrio atual (B2) mais o valor do reajuste (C2). Para as linhas seguintes, a

    frmula ser a mesma, devendo-se apenas substituir B2 por B3, B4, B5, etc. e C2 por C3, C4, C5...

    A planilha completa ficar assim:

    Figura 8 Planilha de reajuste preenchida

    17

  • 1.2 FUNO CONT.SE

    Esta funo da categoria Matemticas, e usada sempre que desejamos saber a quantidade

    de vezes que determinado valor se repete num intervalo. Veja a tabela abaixo:

    Figura 9 Tabela de exemplo da funo CONT.SE

    Essa tabela simula as vendas de uma concessionria de veculos em uma semana. Para

    facilitar, inseri apenas o nome do cliente e o veculo que ele levou, e coloquei apenas 3 diferentes

    tambm para no complicar. Como a tabela pequena, fica fcil verificar quantos veculos de cada

    modelo foram vendidos. Imagine agora se a tabela contivesse 500 registros e 15 modelos diferentes

    de veculos. Seria bem mais trabalhoso no? Para isso existe esta funo. Veremos agora como usar

    a funo CONT.SE para contar quantas vezes cada carro foi vendido nesta tabela. Faremos uma

    nova tabela que mostrar os totais:

    Figura 10 Tabela de apoio

    18

  • Calcularemos primeiro o total de vendas do Gol. Para isso, posicione o cursor na clula E3 e

    abra o Assistente de Funes. Localize ento a funo CONT.SE (categoria Matemticas) e clique

    em Prximo. A janela que dever aparecer a seguinte:

    Figura 11 Janela de configurao da funo CONT.SE

    A funo CONT.SE possui dois argumentos, que so obrigatrios: o intervalo, que indica

    em quais clulas ser feita a verificao, e critrios, que define o que ser verificado. No campo

    critrio, pode-se usar os operadores matemticos , , = e =. No caso do sinal de igual (=),

    este pode ser omitido, digitando-se apenas o valor a ser pesquisado, que pode ser texto (entre

    aspas), nmeros ou um endereo de clula, e neste caso o Calc comparar com o valor da clula em

    questo.

    Para nosso exemplo, o intervalo ser $B$2:$B$10, pois so essas clulas que contm os

    valores a serem verificados. J em critrios, pode-se digitar tanto Gol (texto) quanto D3 (clula de

    referncia, que contm a palavra Gol). No entanto, melhor usar o endereo da clula por dois

    motivos: o primeiro que, se o valor de D3 for modificado, o CALC automaticamente recontar

    para este novo valor, e o segundo que facilita para copiar a frmula e colar nas linhas seguintes,

    pois o CALC atualiza de acordo com a linha. Isso quer dizer que se voc copiar a frmula que est

    na clula E3 para a clula E4, a o campo critrios ser atualizado automaticamente para D4, pois

    nesse caso est se referindo quela linha e far a verificao para o valor seguinte (Fox). J se for

    19

  • preenchido com Gol, o Calc continuar comparando com Gol, mesmo que eu deseje comparar

    agora o Fox.

    A janela preenchida dever ficar assim:

    Figura 12 Preenchimento da funo CONT.SE

    Aps o preenchimento da frmula em todas as clulas, o Calc dever retornar os seguintes

    valores:

    GOL = 2;

    FOX = 4;

    Ka= 3.

    20

  • 1.3 FUNO SOMASE

    Tambm da categoria Matemticas, a funo SOMASE efetua a soma dos valores em um

    determinado intervalo, baseado na condio estabelecida. Vamos considerar, como exemplo, a

    tabela abaixo, que contm as vendas dos funcionrios de uma loja em um determinado dia:

    Figura 13 Exemplo para utilizao da funo SOMASE

    A loja do exemplo acima possui trs vendedores: Jos, Fernanda e Arnaldo. Sabemos que o

    total de vendas dos trs foi R$1.771,00. Mas quanto vendeu cada um? Para saber, recorremos

    funo SOMASE. Antes, porm vamos colocar fazer outra tabelinha do lado, com o nome de cada

    vendedor, para que o Calc retorne o valor de venda de cada um:

    Figura 14 Tabela de apoio para a funo SOMASE

    21

  • Depois de criarmos a segunda tabela, colocaremos o cursor em E5, abriremos o assistente de

    funes, localizaremos a funo SOMASE e clicaremos em Prximo. Esta funo possui trs

    parmetros:

    Intervalo (obrigatrio): o intervalo de clulas que contm os valores a serem

    verificados. No nosso exemplo, de A2 at A12 (A2:A12);

    Critrios (obrigatrio): funciona da mesma maneira que na funo SOMASE. Para

    o caso do Arnaldo, deve ser preenchido com E5 ou Arnaldo;

    Soma_intervalo (opcional): define o intervalo que ser somado nas linhas em que o

    critrio for atendido. Se for deixado em branco, o Calc assume que o soma_intervalo

    igual ao intervalo. Como no isso que queremos, preencheremos este campo com

    os valores corretos, que no caso B2:B12.

    O preenchimento dever ficar assim:

    Figura 15 Preenchimento da funo SOMASE

    O que foi feito acima foi o seguinte: nas linhas em que a coluna A contm Arnaldo,

    soma-se o valor da coluna B na mesma linha. Caso contrrio, no soma. O valor da frmula para o

    caso do Arnaldo dever ser R$325,00, o de Fernanda R$878,00 e o de Jos ser R$568,00, de

    acordo com a figura abaixo:

    22

  • Figura 16 Tabela preenchida com o uso da funo SOMASE

    23

  • 1.4 FUNO CONT.NM

    Pertencente categoria matemticas, a nica funo desta funo contar quantas

    clulas contm valores numricos no intervalo determinado, ignorando texto e clulas em branco.

    Para exemplificar, usaremos novamente o boletim que foi usado para exemplificar a funo SE.

    Suponhamos que desejssemos saber quantas clulas possuem valores numricos (notas) em todo o

    intervalo da tabela, que vai de A1 at G6:

    Figura 17 Tabela de apoio da funo CONT.NM

    Selecionaremos ento a clula B10 para inserir a funo e digitaremos

    =CONT.NM(A1:G6), ou se preferir, chamar o Assistente de funes, localizar a funo

    CONT.NM e, em valor 1, digitar o intervalo. O valor que a funo retornar ser 25, pois essa a

    quantidade de clulas que a possuem valores numricos naquele intervalo.

    24

  • 1.5 FUNO CONT.VALORES

    Diferentemente da funo CONT.NM, que pertence categoria Matemticas, esta

    funo pertence categoria Estatsticas. Enquanto a primeira funo soma apenas clulas que

    contm nmeros, a funo CONT.VALORES soma clulas que possuem qualquer tipo de dados

    (texto, nmero, sinais e at espao em branco) no contando apenas clulas vazias. importante

    ressaltar que se for pressionada a barra de espaos no teclado, o Calc no a considera mais aquela

    clula como vazia, e ser contada na funo.

    Como exemplo, usaremos o mesmo exemplo acima, para verificarmos a diferena.

    Ponha o cursor em B11 e digite =CONT.VALORES(A1:G6), ou se preferir use o Assistente de

    Funes. Veja o comparativo das duas funes no mesmo exemplo:

    Figura 18 Comparativo entre CONT.NM e CONT.VALORES

    25

  • 1.6 FUNES E E OU

    Estas funes foram colocadas juntas, pois tem funo muito semelhante: ambas fazem

    comparao de pelo menos duas condies e retornam VERDADEIRO ou FALSO, dependendo das

    condies. As duas funes pertencem categoria Lgicas.

    Tanto a funo E quanto a funo OU so raramente usadas sozinhas, pois se o forem, o

    resultado ser apenas a palavra VERDADEIRO ou a palavra FALSO. Elas so utilizadas

    geralmente de auxiliares para outras funes, principalmente a funo SE.

    Antes de vermos um exemplo de cada funo importante entendermos a diferena de

    uma para outra. Como informado, ambas as funes precisam de pelo menos duas condies para

    funcionar, o que faz com que a sintaxe das duas seja a seguinte:

    Funo E =E(condio 1; condio 2; ...condio N);

    Funo OU =OU(condio 1; condio 2; ...condio N)

    As condies 1 e 2 foram negritadas por serem obrigatrias, enquanto que as

    restantes so opcionais. Cada condio independente, ou seja, uma pode ser verdadeira e outra

    falsa. A funo retornar VERDADEIRO ou FALSO dependendo das condies, e obedecendo aos

    seguintes critrios:

    Funo E: retornar VERDADEIRO somente se TODAS as condies forem

    verdadeiras. Havendo pelo menos uma falsa, o resultado ser FALSO;

    Funo OU: retornar FALSO apenas se TODAS as condies forem falsas.

    Havendo pelo menos uma verdadeira, o resultado ser VERDADEIRO.

    Para exemplificar, vamos ver alguns exemplos:

    =E(2>3;5=4) retorna FALSO, pois 2 no maior que 3 (FALSO) e 5 no igual a 4

    (FALSO);

    =E(31>18;23 2) retorna VERDADEIRO, pois 3 igual a 3 e 7 maior que 2. Como

    todas as condies so verdadeiras, retornou VERDADEIRO;

    =OU(3=4;5>7) retorna FALSO, pois 3 no igual a 4 (FALSO) nem 5 maior que

    7. Quando ambas as condies so falsas, o resultado FALSO;

    26

  • =OU(4>2;(32/4=9)) retorna VERDADEIRO, pois 4 maior que 2

    (VERDADEIRO). Mesmo a segunda condio (32/4=9) sendo falsa, na funo OU

    necessrio que apenas uma condio seja verdadeira para que a funo retorne

    VERDADEIRO;

    =OU(15>10;17

  • Figura 21 Exemplo do resultado da funo enquanto o preenchimento est

    incompleto

    No caso da figura acima, C3 est em branco e por isso o Excel considera o valor faltante

    como sendo zero (convertido em horas igual meia-noite). Como das 14hs at a meia-noite se

    passam 10 horas, esse valor que o Calc preenche em D3. Para evitar que isso ocorra, podemos

    aperfeioar a frmula em D3 para que o clculo seja feito apenas quando ambos os valores

    estiverem preenchidos, caso contrrio D3 fica em branco. A frmula a ser usada a seguinte:

    Figura 22 Resolvendo o problema do preenchimento incompleto

    O que foi feito acima foi o seguinte: usamos uma funo SE, que em seu Teste usa uma

    funo OU. O trecho =OU(B3=;C3=) verifica se B3 ou C3 (ou ambas) esto em branco.

    Enquanto pelo menos uma das duas estiver em branco, retornar VERDADEIRO e o valor em D3

    ser em branco tambm. Para que o que teste retorne FALSO, necessrio que ambas as clulas

    estejam preenchidas, e nesse caso a funo executar o clculo (Teste_seno). Veja isso na prtica:

    28

  • Figura 23 Resultado da funes SE e OU

    A figura acima mostra trs situaes: apenas B3 preenchido, apenas C3 preenchido e ambos

    preenchidos. Note que apenas no ltimo caso, o valor de D3 aparece, que era o nosso objetivo

    inicial.

    Vamos agora ver um exemplo da funo E dentro da funo SE. Suponhamos que voc

    tenha a lista de clientes abaixo, e voc vai fazer a oferta de algum produto:

    Figura 24 Exemplo para uso da funo E com a funo SE

    No entanto, esta oferta no ser feita a todos, e sim apenas aos que atendem aos critrios

    estabelecidos, que no nosso caso : idade a partir de 30 anos e renda a partir de R$1.500. Na coluna

    D, dever ser escrito SIM para os clientes que atenderem os dois critrios e NO para os

    clientes que atenderem apenas um dos critrios (tanto faz se a idade ou a renda) ou nenhum.

    29

  • Figura 25 Preenchendo a frmula para selecionar os clientes

    O que foi feito no exemplo da figura acima foi: primeiro usamos a funo E no teste da

    funo SE para que a mesma verifique quais atendem os critrios determinados. Para os que

    atenderem os critrios, retornar SIM (valor_ento), e para os que no atenderem, retornar NO

    (valor_seno). Depois de preencher a frmula para a primeira linha, pode-se copiar e colar para

    todas as linhas seguintes, na coluna D. A tabela preenchida dever ficar assim:

    Figura 26 Tabela preenchida com as funes E e SE

    30

  • 1.7. FUNO PROCV

    Esta funo pertence categoria Planilha e utilizada em matrizes de dados (tabelas com

    pelo menos duas linhas e duas colunas) para pesquisa de valores. Ela pesquisa um valor na primeira

    coluna da matriz e, caso seja localizado, retorna o valor de qualquer coluna, na linha onde o valor

    procurado foi localizado.

    Vamos a um exemplo: digamos que voc tem uma locadora de filmes e deseja controlar as

    vendas atravs de uma planilha do Calc. A tabela poderia ser como na figura abaixo:

    Figura 27 Tabela de exemplo para uso da funo PROCV

    Na tabela acima, as colunas A at E sero usadas para registros das locaes e das colunas

    H at J constam os filmes que esto cadastrados (obviamente uma locadora teria muito mais filmes,

    que poderiam inclusive estar em outra planilha, porm foram usados poucos apenas para

    exemplificar). O que a funo PROCV pode fazer por ns nesse caso : ao preenchermos o nome do

    filme, na coluna B, podem ser preenchidos automaticamente o valor e a categoria do mesmo, se

    for localizado na tabela de filmes.

    Antes de usarmos a funo, vejamos os parmetros da mesma:

    Critrios de pesquisa (obrigatrio): o valor que ser procurado (no nosso caso o

    nome do filme), lembrando que essa funo pesquisa apenas na primeira coluna da

    tabela;

    Matriz (obrigatrio): o intervalo onde esto os dados;

    ndice (obrigatrio): o nmero da coluna onde se deseja que se retorne o valor.

    No nosso caso, a coluna H a coluna 1, a coluna dos valores a 2 e a das categorias

    a nmero 3.

    Ordem de classificao (opcional): pode ser preenchido com VERDADEIRO (ou o

    nmero 1), FALSO (ou o nmero 0) ou deixado em branco. Caso seja

    VERDADEIRO, ser necessrio classificar os dados em ordem alfabtica, caso

    31

  • contrrio dar mensagem de erro. Se for falso, no necessrio classificar. Se for

    deixado em branco, assumir o valor VERDADEIRO.

    Agora sim vamos tabela. Selecione a clula do valor (C2), abra o Assistente de Funes e

    digite o seguinte:

    Figura 28 Exemplo de preenchimento da funo PROCV

    Em critrio de pesquisa, foi utilizado o valor B2 pois nessa clula que contm o nome do

    filme. Aps o mesmo ser digitado, ser pesquisado na primeira coluna da tabela dos filmes (H2:J9).

    O ndice 2 indica que se o critrio for achado na primeira coluna, retornar o valor que est na

    coluna 2 (valor) da linha onde o critrio foi localizado.

    Feito isto, selecione C2 e faa o mesmo procedimento. A nica alterao que o ndice ser

    3 e no mais 2, pois agora desejamos saber a categoria, que a terceira coluna da tabela. Veja

    abaixo um exemplo de como poderia ficar a tabela preenchida:

    Figura 29 Exemplo de tabela preenchida com o auxlio de PROCV

    32

  • Voc deve ter notado que na linha 7 aparecem duas vezes o valor #N/A. Isso ocorre porqu

    o valor de referncia B7, que est em branco. Como o valor em branco () no existe na tabela,

    aparece o #N/A, que significa Valor no disponvel. Para corrigir esse erro simples, basta usar

    uma funo SE para que, se B7 estiver em branco, o valor da clula seja (em branco), e execute a

    funo PROCV apenas se existir algum texto. A funo para C7 ficaria mais ou menos assim:

    Figura 30 Corrigindo mensagem de erro

    Seria interessante usar esta funo a partir j da primeira linha, pois sempre que a clula

    onde o valor ser pesquisado estiver em branco, aparecer esta mensagem. til inseri-la logo na

    primeira linha, e assim que ela estiver concluda, copiar e colar a frmula nas linhas seguintes.

    33

  • 2. RECURSOS ADICIONAIS DO CALC

    Alm de funes, o Calc possui vrios recursos que podem agilizar e/ou facilitar a vida de

    quem est utilizando o software. So recursos para classificar, limitar valores, proteger, etc. Vamos

    estudar alguns deles a partir de agora.

    2.1 AUTOFILTRO

    O AutoFiltro um recurso que permite selecionar alguns valores da planilha, que atendem

    ao(s) critrio(s) especificado(s). Pode-se usar tanto critrios simples de pesquisa quanto critrios

    personalizados. Para acessar, deve-se colocar o cursor em qualquer clula da linha que contm o

    rtulo (nome dos campos, ex: nome, idade, etc) e depois selecionar o menu Dados Filtrar

    AutoFiltro. Do lado de cada clula da linha selecionada aparecer o smbolo , que indica que j

    podemos iniciar a filtragem de valores. Veja exemplo:

    Figura 31 Tabela de exemplo para uso do recurso AutoFiltro

    Como voc deve ter percebido, o smbolo mencionado no pargrafo anterior apareceu ao

    lado de Nome, Idade e Sexo, que esto todos na mesma linha. Esse smbolo um boto clicvel, e

    quando se clica em cima de um deles aparecero os seguintes itens:

    Todas: essa opo utilizada quando foi aplicado algum filtro e queremos que todos

    os itens sejam mostrados novamente. como se a filtragem fosse desfeita;

    34

  • 10 primeiros: mostra apenas os dez primeiros itens da lista para aquele filtro,

    independentemente de outros critrios;

    Filtro Padro: permite usar critrios personalizados de filtro. Ser estudado mais

    adiante.

    Alm dessas trs opes, aparecero logo abaixo alguns itens, que nada mais so do que os

    itens que constam naquela coluna. Por exemplo, se selecionarmos o boto do lado da coluna C

    (Sexo), aparecero M e F, que so as opes disponveis para esta coluna:

    Figura 32 Opes de um dos menus de Filtragem

    Se clicarmos na opo M, a lista ser filtrada, e sero mostrados apenas as linhas que

    contm M no sexo:

    Figura 33 Exemplo de uso de Filtro Simples

    Note que, assim que um filtro aplicado a uma coluna, o boto muda de cor, passando a

    ficar azul. Se forem aplicados filtros a outras colunas, acontecer o mesmo com elas:

    35

  • Figura 34 Exemplo de mais de uma filtragem

    No caso acima, selecionamos o valor Pablo na coluna de Nomes, e como existia apenas

    um Pablo, foi o que retornou. Caso houvessem mais, seria mostrado um em cada linha.

    Alm dos filtros simples, existe tambm a opo Filtros Padro (que nada mais so que

    filtros Personalizados). Suponhamos que quisssemos visualizar todas as pessoas do sexo masculino

    cuja idade seja maior que 25 anos. Nesse caso, primeiramente temos que selecionar Todas na

    coluna Nome, para voltar como estava antes. Aps isso, selecionamos a opo Filtro Padro. A

    seguinte caixa de dilogo surgir:

    Figura 35 Caixa de dilogo Filtro Padro

    Nesta caixa de dilogo existem:

    Nome do campo: qual campo ser utilizado na filtragem (neste exemplo, existem as

    opes Sexo, nome e Idade);

    Condio: contm um operador matemtico que ser usado para comparao, os

    quais so os seguintes: =, >, =,

  • o Menor %: idem ao anterior, porm com os menores. Valor: o valor de referncia, que ser comparado com os outros para que se decida

    quais valores sero mostrados e quais no sero.

    Voltando ao nosso exemplo, para que sejam mostrados apenas os que tem mais de 25 anos,

    configure da seguinte maneira:

    Nome do campo: Idade;

    Condio: > (maior);

    Valor: 25.

    Clique em OK. A tabela dever ficar assim:

    Figura 36 Exemplo de uso de filtro simples com filtro padro

    Da mesma maneira, podem ser usados filtros para calcular valores inferiores a um valor x,

    iguais ou diferentes. necessrio apenas ter cuidado com o maior (>) e maior ou igual (>=), pois no

    primeiro caso sero localizados apenas os valores que so superiores ao valor determinado,

    enquanto no segundo caso o valor entra junto na lista, caso haja. Por exemplo: se tivssemos

    colocado no exemplo acima para localizar os valores maiores ou iguais a 25, e houvesse 25 na lista,

    o mesmo teria sido mostrado.

    O filtro padro pode ser usado para filtrar mais de uma condio ao mesmo tempo. Por

    exemplo, se quisermos que seja mostrado apenas os que tm idade entre 20 e 30 anos, inclusive, no

    ser possvel usando apenas filtro simples. Teremos que acessar o filtro padro para este caso. No

    filtro padro podem ser usados os operadores E e OU, que tem o mesmo sentido das funes E e

    OU, vistas anteriormente.

    Ento, para o exemplo do pargrafo anterior, configuramos da seguinte maneira:

    37

  • Figura 37 Exemplo de filtro usando mais de uma condio

    No exemplo acima, foi usado filtro E, que s retorna os valores em que todas as condies

    forem verdadeiras. No nosso exemplo, as condies foram: idade maior ou igual a 20 E idade

    menor ou igual a 30. Quem tem 52, por exemplo, atende primeira condio, que idade maior ou

    igual a 20, porm no atende segunda, que idade menor ou igual a 30. Por isso, no mostrado.

    A lista que contm os valores que atenderam aos dois critrios a seguinte:

    Figura 38 Resultado de filtragem usando mais de uma condio (Operador E)

    J o operador OU faz com que sejam mostrados todos os critrios que tenham pelo menos

    uma condio verdadeira, no importando o resultado das outras. Por exemplo, iremos inverter

    agora, queremos que sejam mostrados apenas os que tenham menos de 20 e mais de 30. Com o

    operador E no seria possvel, pois no tem como um valor ser menorque 20 e maior que 30 ao

    mesmo tempo. Para isso, usaremos o operador OU, e a configurao seria a seguinte:

    Figura 39 Exemplo de filtro com operador OU

    38

  • E o resultado seria o seguinte:

    Figura 40 Resultado da filtragem usando operador OU

    Caso voc no queira mais utilizar AutoFiltros, s remov-los, clicando novamente em

    Dados Filtrar AutoFiltro que ele desaparecer.

    39

  • 2.2 CLASSIFICAR DADOS

    Esta opo est localizada no menu Dados e serve para fazer a classificao de valores, em

    ordem crescente ou decrescente, seguindo um ou mais critrios.

    Para melhor compreenso, vamos usar a figura abaixo, que quase igual figura do item

    anterior, porm com apenas uma coluna a mais:

    Figura 41 Tabela de exemplo para recurso Classificar Dados

    A tabela acima contm os seguintes campos: Nome, Idade, Sexo e Cidade. Suponhamos que

    precisemos classificar os clientes em ordem alfabtica por nome. Para isso, temos que selecionar

    toda a tabela (e no apenas a coluna dos nomes, seno ir classificar apenas essa coluna e os dados

    ficaro misturados). Aps isso, iremos em Dados Classificar, e aparecer ento a seguinte caixa

    de dilogo:

    40

  • Figura 42 Caixa de dilogo Classificar Dados

    Por enquanto, utilizaremos apenas a primeira parte, que o item Classificar por. Como

    queremos classificar por nome, no precisa alterar nada ali por enquanto. A ordem pode ser

    crescente, que de A at Z (ou do menor para o maior, no caso de nmeros), ou decrescente, que

    de Z at A (ou do maior para o menor). Vamos colocar decrescente e dar OK. A tabela ficar assim:

    Figura 43 Tabela depois de classificada

    O primeiro item a ser classificado no precisa ser necessariamente o da primeira coluna. No

    nosso caso, poderia por exemplo ter sido classificado primeiro por idade, ao invs de nome. Neste

    caso, teramos os mais velhos primeiro, at chegar nos mais novos (caso fosse selecionado

    decrescente).

    41

  • Na classificao feita acima, foi usado apenas o primeiro critrio de classificao por no

    haver nenhum dado repetido (todos os nomes eram diferentes). Mas e se tivssemos valores iguais,

    como o Calc saberia qual classificar primeiro?

    Para isso existe a opo em seguida por, de preenchimento opcional, que faz com que, caso

    o primeiro valor se repita, ele faz a verificao atravs deste segundo elemento, para definir qual

    vir em seguida. Por exemplo, se classificarmos primeiramente por cidade, veremos que So Paulo

    aparece duas vezes, sendo uma para Fbio e outra para Pedro. Vamos agora classificar por Cidade

    crescente e por Nome Decrescente. Isso far com que o registro de Pedro aparea primeiro que o de

    Fbio, pois como a cidade empatou, o critrio de desempate o nome. Como selecionamos

    decrescente, o Pedro vir primeiro que o Fbio, e vice-versa. Veja:

    Figura 44 Exemplo de classificao usando dois critrios

    Caso seja necessrio, possvel ainda efetuar um terceiro critrio de classificao, que

    funcionaria da mesma maneira. Por exemplo, se o segundo critrio de classificao fosse o sexo,

    Pedro e Fbio teriam empatado novamente, sendo necessrio um terceiro critrio, que poderia

    neste caso ser tanto nome quanto idade, crescente ou decrescente. Para isso, bastaria configurar o

    segundo Em seguida por.

    42

  • 2.3 VALIDAO

    Este recurso est presente no menu Dados, e serve para limitar os valores que podem ser

    usados em determinada clula. Por padro, as clulas aceitam qualquer tipo de valor (nmeros,

    texto, porcentagem, data, etc.). No entanto, existem alguns casos que necessitam, ou pelo menos

    seria mais til, que fossem delimitados certos tipos de valores, para evitar que sejam preenchidos

    valores que no cabem em determinada clula.

    Para acessar o recurso de Validao de Dados, primeiramente selecione as clulas que sero

    afetadas. Depois, acesse o menu Dados Validade. Aparecer a seguinte janela:

    Figura 45 Janela de Validao de dados

    Veja um exemplo: suponha que voc trabalha numa revendedora de veculos e tem que

    fazer a planilha de controle de vendas. Digamos que existam trs vendedores (por exemplo: Paulo,

    Ricardo e Joo) e cinco carros (Gol, Fox, Palio, Civic e Corsa). Vamos selecionar primeiramente a

    coluna dos nomes, as clulas que sero utilizadas, depois acessaremos a janela de Validao, e

    selecionaremos a opo Lista. Aps isso, em Entradas, digite os nomes que voc quer que sejam

    possveis utilizar, um em cada linha. Para passar para a linha seguinte, pressione ENTER. Caso

    43

  • voc deseja que os nomes sejam classificados em ordem alfabtica, marque Classficar os valores

    em ordem crescente. A lista preenchida ficar mais ou menos assim:

    Figura 46 Validando clulas selecionadas

    Feito isso, clique em OK. Voc voltar para a planilha, porm ao selecionar uma das

    clulas que foram validadas, aparecer o smbolo , que ao ser pressionado mostrar uma caixa de

    seleo contendo os valores que foram digitados na lista. Veja:

    Figura 47 Lista contendo os valores validados

    44

  • Isso quer dizer que, no intervalo que foi feita a validao, ser permitido digitar ou

    selecionar apenas os valores que esto na lista. Caso voc digite um valor diferente dos valores da

    lista, aparecer uma mensagem de erro, similar a esta:

    Figura 48 Mensagem de erro padro de validao

    Essa mensagem a mensagem padro de erro. No entanto, voc pode escrever a sua prpria.

    Para isto, selecione novamente as clulas que foram/sero validadas e selecione a opo de

    Validao de Dados novamente. Em seguida, acesse a aba alerta de erro. Apacer a seguinte janela:

    Figura 49 Janela para personalizao da mensagem de erro.

    Na figura acima, j foram preenchidos os valores. Essa janela contm os seguintes itens:

    Ao: que tipo de ao ser efetuado pelo Calc. Pode ser de trs tipos:

    o Parar: faz com que o usurio tenha que alterar obrigatoriamente o valor digitado para um dos valores da lista. Aparece apenas o boto OK;

    45

  • Figura 50 Exemplo da opo Parar

    o Aviso: permite que o usurio escolha entre aceitar o valor que no est na lista ou no. Possui os botes OK e Cancelar, que se pressionados, faro

    com que o valor que no est na lista seja aceito ou no, respectivamente;

    Figura 51 Exemplo da opo Aviso

    o Informaes: idem ao aviso. Ttulo: o que aparecer na barra de ttulos (a barra azul da mensagem);

    Mensagem de erro: a mensagem propriamente dita, informando sobre o erro

    ocorrido.

    Outras colunas podem ser validadas tambm, usando tanto a opo lista quanto outras

    opes. Para a coluna do veculo, podemos usar a opo lista novamente, incluindo agora os nomes

    dos veculos, e no alerta de erro podemos escrever para selecionar um veculo da lista.

    J para a coluna do preo, usaremos a opo Nmero Decimal, pois no exemplo

    colocaremos que o valor mnimo R$10.000. Para isso, temos que selecionar em Dados a opo

    Maior que e, em Mnimo, digitarmos 10000 (sem pontos, vrgulas etc., a menos que se queira

    usar um valor quebrado como mnimo, por exemplo, 10345,32). Veja exemplo:

    46

  • Figura 52 Outro exemplo de validao

    Para este caso, colocaramos o alerta de erro a mensagem O valor mnimo aceitvel

    R$10.000,00 ou algo do tipo.

    Alm de Lista e nmero decimal, podem ser validados os seguintes tipos de dados:

    Data;

    Hora;

    Nmero inteiro;

    Comprimento de texto.

    Todos esses, com exceo de lista, podem ser validados comparando valores, usando os

    seguintes operadores matemticos:

    Igual a;

    Maior que;

    Menor que;

    Menor ou igual a;

    Maior ou igual a;

    Diferente de;

    Entre;

    No est entre.

    47

  • Cada opo selecionada dever ser preenchida com um tipo de valor diferente. Por exemplo,

    ao selecionar Maior ou igual a, deve-se preencher o valor mnimo. Ao selecionar Menor que,

    dever ser preenchido o valor mximo. Ao selecionar Entre, deve-se preencher o valor mximo e

    o valor mnimo permitidos, e assim por diante.

    48

  • 2.4 DEFINIR NOMES

    Normalmente, sempre que queremos calcular a soma, mdia ou qualquer outra funo que

    necessite de um intervalo, usamos o nome da funo e digitamos o endereo das clulas como

    parmetro do intervalo. Por exemplo, se existem valores a serem somados em B2, B3, B4 e B5, a

    frmula (que talvez esteja em B6) ficaria assim:

    =SOMA(B2:B5)

    No h nada errado com essa frmula. No entanto, esse intervalo (ou qualquer outro) pode

    ser nomeado, para termos facilitar a localizao e/ou compreenso do mesmo. Para isto, existe o

    recurso Definir Nome, que est localizado no menu Inserir (subitem Nomes Definir ou CTRL +

    F3 no teclado):

    Figura 53 Definir Nomes

    Para melhor compreenso, vamos utilizar um exemplo. Vamos voltar novamente ao boletim

    escolar:

    Figura 54 Tabela de apoio para Definir Nomes

    49

  • Se voc clicar em F2, ver que a frmula que aparece =SOMA(B2:E2), pois este intervalo

    contm as clulas das notas, que so os valores que deveriam ser somados. Vamos deixar como est

    por enquanto.

    Agora vamos selecionar de B2 a E2 e em seguida acessar Inserir Nomes Definir. Em

    seguida aparecer a janela da figura 53. Em Nome, digite Portugues (sem as aspas e de

    preferncia sem acento) e clique OK.

    Agora, clique em F2 e edite a frmula. Apague o valor entre parnteses (B2:E2) e substitua

    por Portugues (o nome que foi dado ao intervalo). A frmula dever ficar =SOMA(Portugues).

    Pressione ENTER.

    Voc ver que o resultado no foi modificado (caso tenha modificado, reveja, pois haver

    algo errado), mas isso que deve acontecer mesmo. Isso ocorreu porqu isso foi feito aps a

    frmula ter sido inserida. Tanto de uma maneira quanto de outra, o resultado deve ser o mesmo.

    Importante: ao nomear intervalos, no podem ser usados nomes de funes existentes no

    CALC (SOMA, MEDIA, MAXIMO, etc), nem nomes de endereos de clulas (A2, B5, D9, etc),

    pois estas palavras so palavras reservadas do Calc, e caso pudessem ser utilizadas causariam

    ambiguidade (o Calc no saberia se estaramos falando da funo ou do nome do intervalo).

    50

  • 2.5 PROTEGER CLULAS

    Este um recurso importante, pois evita que sejam feitas alteraes por descuido (ou

    propositalmente) nos valores e/ou frmulas das clulas. Para acessar essa proteo, v em Planilha

    Proteger Documento...no sub-menu que se abrir, aparecero duas opes:

    Planilha: protege apenas a planilha atual, deixando as outras livres para edio;

    Documento: protege todas as planilhas de uma vez s.

    Para fins de compreenso, iremos estudar apenas a proteo da planilha, pois a proteo do

    documento funcionar da mesma maneira. Aps acessar o menu de Proteger Planilha, aparecer a

    seguinte janela, pedindo senha para proteo:

    Figura 55 Janela de digitao de senha para proteo da planilha

    O uso de senha opcional; no entanto, caso voc no digite uma senha, qualquer pessoa

    poder desbloquear a planilha, bastando para isso apenas acessar o menu de proteo de planilha

    novamente. Se for digitada uma senha, necessrio digitar a mesma senha, EXATAMENTE

    IGUAL (diferencia maisculas de minsculas), no campo Confirmar. Independente de cadastro de

    senha ou no, clique em OK para ativar a proteo.

    Enquanto a planilha estiver protegida, caso algum tente fazer alguma alterao nas clulas,

    aparecer a seguinte mensagem:

    Figura 56 No possvel modificar clulas protegidas

    51

  • Para desproteger, acesse Ferramentas Proteger Documento Planilha (ou Documento,

    dependendo do que voc selecionou). Caso voc tenha cadastrado senha, a mesma ser solicitada.

    Caso contrrio, o desbloqueio feito automaticamente.

    possvel, no entanto, que algumas clulas fiquem desprotegidas, mesmo com a proteo

    de planilha ativada. Para isso, preciso que primeiramente desproteger essas clulas. Vamos ver

    isso atravs de um exemplo:

    Figura 57 Planilha utilizada para exemplo de proteo de clulas

    Digamos que, na planilha acima, que ser utilizada por outra pessoa, queiramos proteg-la,

    porm queremos que a pessoa tenha acesso a alterar os nomes (Coluna A) e Salrios (Coluna B), e

    no deve ter acesso a alterar as frmulas das Colunas C e D. Para isso, antes de proteger a planilha,

    temos que selecionar as clulas que ficaro desprotegidas (no nosso caso, de A2 at C13), e em

    seguida temos que ir no janela de formatao das clulas (menu Formatar Clulas... ou CTRL + 1

    no teclado), localizar a aba Proteo de Clulas:

    52

  • Figura 58 Janela de desproteo de clulas

    Por padro, todas as clulas vem com a opo Protegida selecionada. No entanto, essa

    proteo s ativada quando protegemos a planilha. Para ter acesso a alterar valores mesmo com a

    planilha protegida, temos que desmarcar a opo Protegida e clicar em OK. Proteja a planilha

    novamente e voc ver que teremos acesso para alterar livremente de A2 at B13 (clulas que foram

    desprotegidas), porm o restante continuar bloqueado. Caso tentemos alterar a clula C9, por

    exemplo, aparecer a mensagem da figura 56.

    Voc deve estar se perguntando: e a opo Ocultar Frmula? Ela tambm s funciona

    quando a planilha est protegida, e serve para ocultar a frmula das clulas selecionadas na barra de

    frmulas. Veja exemplo:

    Figura 59 Exemplo de frmula aparecendo, mesmo a clula estando bloqueada

    53

  • Veja na figura acima a parte circulada em vermelho. Esta a barra de ferramentas, e

    qualquer clula que tenha frmulas, a mesma ser mostrada ali. Para evitar que isso ocorra,

    selecione as clulas que voc deseja ocultar a frmula (no nosso caso, de C2 at D13), v

    novamente no menu Formatar Clulas (figura 58) e marque a opo Ocultar Frmulas. Clique

    OK e proteja a planilha novamente. O resultado ser o seguinte:

    Figura 60 Frmula Oculta

    Repare novamente na barra de frmulas. Mesmo contendo valor em C5, a frmula no

    exibida, enquanto a planilha estiver protegida. como se a clula estivesse em branco.

    54

  • 3. ASSISTENTE DE DADOS

    3.1 TABELA DINMICA

    Tambm conhecido como Assistente de Dados, a Tabela Dinmica um recurso do Calc

    que permite combinar e analisar dados de forma simples e rpida. Pode ser usado para criar uma

    espcie de resumo de um conjunto de dados, a fim de dar uma viso geral sobre a representatividade

    desses dados.

    O Assistente de Dados criado a partir de uma tabela normal, como a apresentada abaixo:

    Figura 61 Tabela de exemplo para Assistente de Dados

    Depois de a tabela estar pronta, clique em qualquer lugar dentro dela, selecione Dados

    Assistente de Dados Iniciar... aparecer a janela abaixo, que questiona qual a fonte de dados ser

    utilizada:

    Figura 62 Selecionando a origem dos dados

    55

  • Note que, ao clicar em qualquer lugar dentro da tabela, quando acionamos o Assistente de

    Dados a tabela selecionada automaticamente. Como queremos utilizar os dados da tabela,

    deixamos marcada a opo Seleo Atual e clicamos OK.

    Aps clicarmos em OK, aparecer a janela abaixo, que serve para definirmos o layout da

    tabela dinmica, ou seja, em que posio cada valor ficar:

    Figura 63 Layout do Assistente de dados

    Cada ttulo de coluna representado por um boto, que pode ser arrastado para qualquer

    uma das posies esquerda (retngulos brancos), sendo que cada um representa os dados de uma

    forma diferente. Na figura acima, os botes j foram arrastados para dentro de seus respectivos

    campos desejados (Coluna, Linha e Dados), e o resultado (para este exemplo) fica assim:

    56

  • Figura 64 Resultado do assistente de dados

    No exemplo acima, o campo Filial foi colocado em Campos de Coluna, e ficou na primeira

    coluna. O campo Categoria foi colocado em Campos de Linha, e seus valores ficaram em uma

    linha. J os valores em si foram colocados em Campos de Dados e ficaram na parte dos dados,

    fazendo interseo entre as respectivas linhas e colunas. Os que no existem na tabela ficaram em

    branco. Por exemplo, no consta nenhuma consultoria para Curitiba na tabela, por isso a mesma

    ficou em branco. Alm disso, a tabela mostra o total, tanto de cada linha quanto de cada coluna.

    Caso o usurio deseje, pode rearranjar os dados de outra maneira, de acordo com a sua

    necessidade. Para isto, basta clicar em cima da tabela dinmica com o boto direito e em seguida

    selecionar a opo Iniciar. A mesma janela de antes ser mostrada. Aps isto, basta arrastar o

    campo desejado para a posio desejada. Veja abaixo outro exemplo de tabela dinmica, utilizando

    os mesmos dados, tendo apenas sido rearranjados:

    57

  • Figura 65 Outro exemplo de tabela dinmica

    As alteraes que foram feitas foram apenas inverter a posio de Categoria e Filial, de

    Campos de Coluna para Campos de Linha e vice-versa. possvel tambm inserir algum dos

    itens no campo Campos de Pgina, o que far com que aparea uma lista para selecionar uma das

    opes. Veja exemplo:

    58

  • Figura 66 Mais um exemplo de tabela dinmica

    O que foi feita para que a tabela ficasse dessa maneira foi mover o campo Filial para

    Campos de Pgina. Isso faz com que aparea uma lista de seleo, que contm o valor Todas e

    os valores da coluna em questo. No exemplo da figura acima, foi selecionada uma das filiais, e

    com isso esto sendo mostrados apenas os valores referentes mesma.

    Voc deve ter reparado que, no final de cada linha e coluna, existe o total. Esse total

    calculado sobre a linha ou coluna correspondente, e por padro calcula a soma dos valores. No

    entanto, possvel utilizar outras funes, como mdia, mximo, mnimo, alm de funes

    estatsticas, como desvio padro. Para trocar a funo da tabela dinmica, v at a tela de layout.

    Em Campos de Dados, existe um boto escrito Soma Valor. Clique com o boto esquerdo

    sobre ele. Ao fazer isso, o boto Opes direita ficar disponvel. Clique neste boto. Aparecer

    a seguinte janela:

    59

  • Figura 67 Janela para seleo da funo do Campo de Dados

    Para mudar a funo, basta apenas selecionar a que voc deseja e clicar em OK. Em

    seguida, clique OK novamente e a tabela j ser atualizada. Para nosso exemplo, iremos utilizar a

    funo Contagem. A tabela dinmica ficar mais ou menos dessa maneira:

    Figura 68 Alterando a funo da tabela dinmica

    O nmero 1 aparece em quase todas as clulas no exemplo acima porqu existe apenas um

    item de cada categoria. Caso existissem mais do mesmo item, os valores seriam diferentes. Isso

    ocorreu devido ao fato de a tabela ser pequena, e estar servindo apenas para demonstrao. Em

    tabelas grandes, com certeza esses valores seriam maiores (talvez no todos, mas a grande maioria).

    60

  • Voc deve ter reparado que algumas clulas ficaram em branco. Isso ocorre porqu este item

    no apareceu nenhuma vez na tabela. Portanto, clula em branco equivale ao valor zero.

    No entanto, no adianta querer preencher as clulas em branco com este valor, ou alterar

    qualquer clula de dentro da tabela dinmica, pois as mesmas esto protegidas, ou seja, no

    permitido a insero, alterao e/ou retirada de valores dentro da mesma manualmente. A nica

    maneira seria alterando valores no layout da tabela dinmica ou alterando valores na tabela original.

    Caso voc tente inserir valores manualmente dentro da tabela dinmica, aparecer a seguinte

    mensagem:

    Figura 69 Mensagem informando que no possvel alterar dados na tabela

    dinmica

    Falando em alterar valores na tabela original, voc pode faz-lo sem problemas. No entanto,

    a tabela dinmica no atualizada automaticamente. Veja a figura abaixo, onde foi alterado o valor

    da categoria Manuteno na filial Porto Alegre, de R$1.900,00 para R$2.500,00 (clulas

    destacadas):

    61

  • Figura 70 Exemplo mostrando que a tabela dinmica no atualizada

    automaticamente

    Como voc pode reparar, a clula C5 contm R$2.500,00, enquanto que a sua clula

    correspondente na tabela dinmica, C21, continua com valor R$1.900,00. Para que a mesma seja

    atualizada, necessrio clicar com o boto direito em cima da tabela dinmica e selecionar a opo

    Atualizar, conforme figura abaixo:

    Figura 71 Opo que atualiza a tabela dinmica

    Aps selecionar a opo de atualizar tabela, a mesma ficar atualizada:

    62

  • Figura 72 Tabela dinmica atualizada

    As clulas alteradas foram destacadas para uma melhor visualizao. Isso foi feito

    manualmente, ou seja, o Calc no destaca automaticamente as clulas que so alteradas.

    Alm de todos os recursos vistos acima, possvel tambm aplicar filtragem nossa tabela

    dinmica, da mesma maneira que feito com uma tabela simples (para mais informaes, veja item

    2.1 AutoFiltro nesta apostila). Isso pode ser feito de duas maneiras: a primeira clicando no boto

    Filtro que est no incio da tabela dinmica, e a segunda e clicando com o boto direito dentro da

    tabela, e em seguida na opo Filtro. Ser mostrada a mesma janela que aparece no AutoFiltro,

    opo Filtro Padro:

    Figura 73 Janela de filtragem para tabelas dinmicas

    Digamos que queiramos que sejam mostradas apenas as linhas cujos valores sejam

    inferiores a R$10.000,00. Para isto, configuraremos o filtro da seguinte maneira:

    63

  • Figura 74 Exemplo de configurao de filtro para Tabela Dinmica

    Note que a configurao exatamente igual ao AutoFiltro. Se quisssemos utilizar mais de

    uma condio, bastaria apenas utilizar os operadores E ou OU, especificar a segunda e/ou terceira

    condies. Para o exemplo da figura acima, o resultado ser o seguinte:

    Figura 75 Resultado de filtragem na tabela dinmica

    Para questes de filtragem, no so considerados os totais, pois os mesmos no so valores

    originais na tabela. So considerados apenas os valores em si.

    Caso os valores da tabela original sejam alterados, os valores da filtragem podem ser

    alterados, podendo ser includos ou retirados. Vejamos um exemplo de cada caso. Primeiramente,

    iremos alterar o valor da manuteno em Porto Alegre (clula C5) para R$11.000,00, ou seja, o

    64

  • critrio para esta clula passar a ser falso, pois no atender mais ao critrio. Aps a atualizao, a

    tabela dinmica com o filtro ficar assim:

    Figura 76 Exemplo de atualizao da filtragem com atualizao dos valores

    Compare a figura acima com a anterior. Voc ver que a coluna da filial Porto Alegre foi

    excluda, pois o valor no est mais atendendo ao critrio. Os totais tambm so atualizados, pois

    eles se referem apenas s linhas e colunas que esto sendo mostradas na tabela no momento.

    Agora iremos fazer o contrrio, ou seja, incluir um valor na tabela. Para isso, iremos

    alterar o valor da categoria Hardware na filial Rio de Janeiro (clula C8) para R$7.200,00. Veja o

    que aconteceu depois de atualizarmos:

    65

  • Figura 77 Outro exemplo de atualizao da filtragem com atualizao dos valores

    Sempre que atualizamos, todos os valores que foram alterados so atualizados, juntamente

    com a tabela em si, se for o caso, e os totais, independente da alterao que feita.

    Como voc pode perceber, a tabela dinmica totalmente personalizvel. Com ela,

    possvel visualizar valores por linhas, colunas, filtros, listas, etc. um recurso bastante til em

    certos casos. Se voc souber us-lo corretamente, pode economizar muito tempo em suas tarefas.

    66

  • 3.2 CRIANDO GRFICOS A PARTIR DE UMA TABELA DINMICA

    Alm dos recursos mostrados acima, o Calc permite que sejam criados grficos a partir da

    tabela dinmica. Para inserir, clique em Inserir Grfico ou no smbolo na barra de

    ferramentas Padro. Aps isso ser feito, aparecer a seguinte janela:

    Figura 78 Assistente de grfico Escolha do tipo de grfico

    Escolha uma das opes disponveis (Barra, Coluna, Pizza, etc) e o subtipo, direita. Um

    grfico aparecer logo abaixo da janela acima, mostrando como o grfico est ficando at o

    momento. Para cada alterao de tipo, subtipo ou qualquer outra, o grfico atualizado

    automaticamente. Para nosso exemplo, utilizaremos o tipo Coluna. Clique em Prximo.

    A janela seguinte a da escolha do intervalo de dados:

    67

  • Figura 79 Escolha do intervalo de dados

    Nesta janela ser necessrio fazer alteraes no intervalo, pelo menos para este exemplo,

    pois da maneira que est, o intervalo selecionado (A17:F23) est englobando as colunas dos totais,

    o que faz com que as mesmas apaream no grfico. Como o total representa a soma de todos os

    valores daquela linha/coluna, a barra referente a ele ficar gigante, distorcendo o grfico. Quando o

    total aparece, como se juntssemos todas as outras barras numa s, uma em cima da outra.

    Para alterar o intervalo, clique no boto e selecione as clulas desejadas. Para o grfico

    ficar perfeito, deve-se selecionar as clulas em amarelo da figura abaixo:

    Figura 80 Intervalo que deve ser selecionado (em amarelo)

    68

  • Este intervalo corresponde a A18:E22. Aps a seleo, clique no boto novamente,

    para que a janela volte ao normal. Feito isso confira se em Intervalo de dados est preenchido

    $Planilha1.$A$18:$E$22. O valor Planilha1 pode variar, pois o nome da planilha onde est a

    tabela, e se a planilha tiver outro nome, ser este nome que aparecer ali. Se o valor inicial ($A$18)

    ou final ($E$22) estiver diferente, voc pode alter-lo manualmente. Para isso, clique na caixa de

    texto que contm o intervalo, apague o valor incorreto e preencha com o correto.

    Nesta janela existem tambm duas opes, que so: Srie de dados em linhas e Srie de

    dados em colunas. Ambas se referem a que tipo de valores sero usados como referncia no

    grfico e na legenda. Caso selecione em linhas, os valores da linha sero referncia, e vice-versa.

    Altere de um para outro e veja a diferena no grfico. Escolha o que mais se adequar ao seu caso e

    clique Prximo.

    A terceira janela do assistente de grfico refere-se personalizao de cada srie de dados:

    Figura 81 Assistente de grfico personalizao das sries de dados

    Isso funciona da seguinte maneira: caso uma das linhas ou colunas (dependendo da maneira

    como foi configurado na janela anterior) contenha um item que deve ficar de fora, ou esteja em

    branco, ele pode ser retirado da planilha. Neste exemplo, iremos apenas trabalhar com a srie

    Consultoria, que j est selecionada na imagem. Para alterar o intervalo, clique no boto em

    Intervalo para Valores de Y. O intervalo atual B19:E19. Como existem trs clulas em branco

    neste intervalo, podemos usar apenas o E19. Selecione esta clula e clique no boto . Ficar

    selecionado apenas o B19 para este intervalo. Caso existissem outras categorias a serem

    selecionadas, o procedimento seria o mesmo.

    69

  • Alm disso, possvel alterar a ordem que as categorias aparecem no grfico. Para isso,

    selecione a categoria que voc deseja e clique nos botes ou para ir para cima ou para

    baixo, respectivamente. As mesmas podem ser Removidas (clicando no boto Remover) ou

    adicionadas, clicando em Adicionar.

    Aps ter configurado todos os itens, clique em Prximo. Ser exibida em seguida a

    seguinte janela:

    Figura 82 Assistente de grfico Escolhendo ttulos e legendas

    Esta janela contm os seguintes itens (todos so opcionais):

    Ttulo: define um ttulo para o grfico. Fica no topo e com letras grandes;

    Subttulo: fica um pouco abaixo do ttulo e com letras menores;

    Eixo X: um rtulo que define o nome do eixo inferior do grfico (horizontal);

    Eixo Y: define o nome do eixo esquerda do grfico (vertical).

    Exibir Grades: exibe linhas na rea do grfico, tanto na vertical (Eixo X) quanto na

    horizontal (Eixo Y). Dependendo do grfico, a opo Eixo Z tambm habilitada;

    Legenda: define a posio do grfico em que a legenda ficar. Para que a mesma

    seja mostrada, necessrio que a opo Exibir Legenda esteja selecionada. A

    posio padro Direita.

    A figura abaixo mostra um exemplo de preenchimento dos campos:

    70

  • Figura 83 Assistente de grfico - exemplo de preenchimento dos Elementos do

    grfico

    Aps configurar, clique em Concluir, lembrando que se pode tambm voltar s telas

    anteriores, clicando em Voltar ou desistir de criar o grfico, clicando em Cancelar.

    Aps toda a configurao, o grfico ficar assim:

    Figura 84 Grfico depois de pronto

    71

  • Aps estar pronto, o grfico totalmente configurvel, tanto tamanho quanto cor, tipo, etc.

    Para comear, vamos alterar o tamanho do grfico. Para isso, clique com o boto esquerdo do

    mouse acima do grfico. Aparecero quadradinhos pretos em cada canto da figura ( ). Passe o

    mouse sobre algum deles e o ponteiro do mouse mudar para duas setas em lados opostos ( ).

    Clique com o mouse, segure e arraste para cima ou para baixo, dependendo se voc deseja aumentar

    ou diminuir. Uma linha pontilhada indica o novo tamanho. Quando estiver satisfeito, apenas solte o

    mouse. Para mover sem mudar o tamanho, clique no meio da figura e segure. O ponteiro do mouse

    mudar para . Com o mouse segurado, mova at a posio desejada, depois solte.

    Para alterar o tipo de grfico, clique com o boto direito em cima do grfico em clique em

    Tipo de grfico. Em seguida abrir a seguinte janela, para escolha do grfico:

    Figura 85 Janela de escolha de tipo de grfico

    Nesta janela, basta alterar o tipo e/ou subtipo para o novo grfico. O grfico da planilha

    atualizado automaticamente. Caso deseje, voc pode tambm alterar para 3D, como est

    selecionado na figura abaixo. Aps configurar, clique em OK.

    Caso deseje alterar a cor de fundo, clique com o boto direito e selecione Propriedades do

    objeto. Na janela que aparece, selecione a aba Preenchimento:

    72

  • Figura 86 Configurao do preenchimento do grfico

    A opo de preenchimento pode ser feita em trs lugares: Legenda, Parede do grfico e

    rea do grfico. Para alterar, necessrio clicar com o boto direito na rea que deseja selecionar.

    Na mesma janela, podem ser alteradas as cores da borda, bastando para isso selecionar a aba borda.

    Para finalizar este captulo, veja abaixo um grfico depois de formatado:

    Figura 87 Exemplo de grfico formatado

    73

  • 4. MACROS

    Uma macro uma sequncia de comandos e funes armazenadas em um mdulo do

    LibreOffice Basic e pode ser executada sempre que voc precisar executar a tarefa. Caso execute

    uma tarefa vrias vezes no Calc, voc pode automatiz-la com uma macro.

    Antes de executar uma macro, necessrio, grav-la, ou seja, entrar no modo de gravao

    da macro, executar a(s) tarefa(s) desejada(s) e salvar. Para isso, acesse Ferramentas Macro

    Gravar Macro. Aps isso, aparecer na planilha a seguinte janela:

    Figura 88 Janela de gravao de macro

    Enquanto essa janela estiver aberta, tudo o que voc fizer ser gravado, ou seja, ser feito

    assim que voc executar. Para parar, clique em Parar gravao.

    Vamos a um exemplo. Imagine a tabela abaixo:

    Figura 89 Tabela para exemplo de utilizao de macros

    Vamos formatar a coluna A, pondo uma cor de fundo na mesma, mais ou menos assim:

    74

  • Figura 90 Exemplo de configurao de macros

    Em seguida, clique em Parar gravao. Aparecer a janela para dar nome macro:

    Figura 91 Janela para salvar a macro

    Escolha um nome para a macro e clique em Salvar. Para este exemplo, ser usado o nome

    que aparece na imagem (formatacao sem acento) A macro ficar salva na lista de macros e poder

    ser acessada clicando-se em Ferramentas Macros Executar Macro (lembre-se antes de

    selecionar as clulas que deseja que a macro seja executada):

    75

  • Figura 92 Janela de seleo de macros

    Aps selecionar a macro desejada, clique em Executar. A macro ser executada

    exatamente igual ao que foi gravado. Para este exemplo, foi selecionada a coluna B antes de

    executar a macro. O resultado final foi o seguinte:

    Figura 93 Macro aps executada

    Quando foi gravada, a macro formatacao continha formatao de clulas, na cor azul. Toda

    vez que a mesma for executada, a partir de agora, ser exatamente isso que ela ir fazer, nas clulas

    selecionadas. Por isso a coluna B ficou com a formatao igual coluna A.

    76

  • Note que todas as macros criadas pelo usurio esto localizadas em Minhas macros. Para

    apagar qualquer uma delas, selecione Ferramentas Macros Organizar Macros LibreOffice

    Basic. Selecione a macro desejada e clique em Excluir:

    Figura 94 Excluindo Macros

    No exemplo acima, criamos uma macro onde foi alterada apenas a formatao do texto. No

    entanto, podem ser criadas macros que efetuam clculos tambm. Vejamos outro exemplo:

    Figura 95 Tabela para utilizao de novo exemplo de macro

    Considere a tabela acima. Vamos criar agora a partir desta tabela uma macro que

    multiplique todos os nmeros por 3. Primeiramente, devemos iniciar a gravao da macro, clicando

    em Ferramentas Macros Gravar Macro. Em seguida, vamos selecionar a clula A3, que

    contm o valor 3. Copie este valor para a rea de transferncia (CTRL + C ou Editar Copiar).

    Feito isso, devemos selecionar todo o intervalo (A1:C3) ou as clulas que devem ser

    multiplicadas e em seguida clicar em Editar Colar Especial. Ser mostrada a seguinte janela:

    77

  • Figura 96 Janela Colar Especial

    Nesta janela deve ser selecionada a opo Multiplicar em Operaes, como na figura.

    Em seguida, clique OK. A tabela ficar assim:

    Figura 97 Tabela aps utilizao da macro

    Em seguida, clique em Parar Gravao. Aparecer a janela para escolher o nome. Para

    nosso exemplo, demos o nome multiplica para a macro. Clique em Salvar. A macro j est

    salva. Para test-la, selecione algumas clulas da tabela atual ou digite novos valores. Em seguida

    v em Ferramentas Macro Executar Macro. Localize a macro desejada e clique em

    Executar.

    Como vimos at agora, as macros so utilizadas sempre que uma tarefa repetitiva deve ser

    executada. Ela pode ser gravada, que foi o que fizemos agora, pode ser programada ou ambos.

    Veremos como programar uma macro e funes no prximo item.

    78

  • 4.1 PROGRAMANDO MACROS E FUNES

    Toda vez que uma macro gravada no LibreOffice Calc, gerado tambm um cdigo

    referente mesma. Esse cdigo criado na linguagem Basic, e gerado automaticamente assim que

    a macro criada, com os comandos referentes ao que foi gravado na macro.

    O pacote LibreOffice possui um editor de linguagem Basic, chamado LibreOffice Basic, e

    pode ser acessado pelo caminho Formatar Macros Organizar Macros LibreOffice Basic.

    Localize a macro desejada e clique em Editar. Ser mostrada ento a janela do LibreOffice Basic,

    e ser mostrado na tela o cdigo referente macro selecionada. Na figura abaixo, est o cdigo

    referente macro multiplica:

    Figura 98 Janela de edio do LibreOffice Basic

    No foi possvel mostrar todo o cdigo gerado na imagem acima; portanto, o mesmo est

    sendo reproduzido abaixo:

    sub multiplica

    rem ----------------------------------------------------------------------

    rem define variables

    dim document as object

    dim dispatcher as object

    rem ----------------------------------------------------------------------

    79

  • rem get access to the document

    document = ThisComponent.CurrentController.Frame

    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

    rem ----------------------------------------------------------------------

    dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

    rem ----------------------------------------------------------------------

    dim args2(0) as new com.sun.star.beans.PropertyValue

    args2(0).Name = "ToPoint"

    args2(0).Value = "$A$1:$C$3"

    dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())

    rem ----------------------------------------------------------------------

    rem dispatcher.executeDispatch(document, ".uno:PasteSpecial", "", 0, Array())

    rem ----------------------------------------------------------------------

    dim args4(5) as new com.sun.star.beans.PropertyValue

    args4(0).Name = "Flags"

    args4(0).Value = "A"

    args4(1).Name = "FormulaCommand"

    args4(1).Value = 3

    args4(2).Name = "SkipEmptyCells"

    args4(2).Value = false

    args4(3).Name = "Transpose"

    args4(3).Value = false

    args4(4).Name = "AsLink"

    args4(4).Value = false

    args4(5).Name = "MoveMode"

    args4(5).Value = 4

    dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args4())

    end sub

    80

  • Todo esse cdigo foi gerado para efetuar o clculo da multiplicao dos valores das clulas.

    Ele gerado automaticamente quando a clula gravada. Pode parecer complicado a princpio,

    porm com um pouco de estudo, ficar mais compreensvel. interessante tambm estudar um

    pouco de lgica de programao, para termos noes do bsico, principalmente sobre variveis.

    Os componentes bsicos de toda macro criada no BASIC so:

    Sub xxxx: esta linha indica o incio do cdigo da macro, sendo que o xxxx

    substitudo pelo nome da mesma. No final de todo o cdigo, ela deve ser fechada,

    digitando-se end sub;

    Dim: este comando serve para declarar as variveis que sero utilizadas. Uma

    varivel um espao de memria que servir para armazenar determinado valor

    (nmero inteiro, texto, nmero decimal, etc), que pode ou no variar quando o

    cdigo executado (por isso se chama varivel);

    Rem: serve para indicar comentrios, e devem ser colocados no incio da(s) linha(s)

    que se deseja usar como comentrio. Um comentrio nada mais que observaes a

    respeito do que est sendo feito naquela parte do cdigo. Isso til para melhor

    compreenso do que est sendo feito, tanto por outra pessoa que analise o cdigo

    quanto pela prpria pessoa que fez, pois se o cdigo for muito grande, ela pode no

    se lembrar de tudo o que foi feito. Sendo assim, teria que analisar o cdigo

    novamente para recordar o que havia feito naquela parte, e assim gastaria mais

    tempo desnecessariamente. Por isso, os comentrios so altamente recomendveis,

    tanto em BASIC quanto em qualquer outra linguagem de programao.

    No possvel explicar aqui como funciona a programao em BASIC, pois o contedo

    muito extenso. Caso deseje mais informaes sobre o assunto, acesse

    http://help.libreoffice.org/Basic/Basic_Help/pt

    Alm das macros, com o BASIC possvel criar funes para serem utilizadas no Calc.

    Veremos como fazer isso no prximo subitem.

    81

  • 4.2 - CRIANDO FUNES CALC NO BASIC

    Antes de comearmos a ver funes propriamente ditas, veremos um pouco de como

    criarmos nossas prprias macros. Vamos comear com uma bem simples, que mostra ao usurio

    uma caixa de dilogo solicitando o nome do usurio. Aps o mesmo preencher e clicar em OK, ser

    mostrada uma mensagem de boas vindas personalizada com o nome do usurio.

    Para comear, abra a janela de gerenciamento de macros, que est em Ferramentas

    Macros Organizar Macros LibreOffice Basic. Em seguida, selecione Novo. Aparecer a

    janela de edio do Basic. Digite o cdigo abaixo:

    Figura 99 Cdigo para Macro

    Feito isso, salve as alteraes e execute a macro. Ser mostrada a janela abaixo, solicitando

    a digitao de nome:

    Figura 100 - Macro em execuo - parte 1

    Aps clicar em OK, aparecer a caixa de mensagem abaixo, com o nome que foi digitado:

    Figura 101 Macro em execuo parte 2

    82

  • Vamos analisar o que cada parte do cdigo faz:

    Sub SeuNome: essa linha o cabealho da macro, onde inicia o cdigo que ser

    executado. Quando foi clicado em Novo, nessa linha aparece escrito Sub Macro1,

    e deve ser substitudo pelo nome de macro desejado;

    Rem: as linhas que comeam com essa palavra so apenas comentrios, que

    explicam o que ser feito ou qualquer outra observao que seja necessria fazer.

    No so consideradas pelo Basic na hora de executar;

    Dim Nome as String: Essa linha declara a varivel Nome, com tipo de dados String

    (texto). Cada varivel que for declarada deve ser colocada em uma linha separada;

    Nome = InputBox("Digite o seu nome:", "Preencha"): essa linha atribui o valor

    digitado na caixa de texto (InputBox) varivel Nome. Os valores entre parnteses

    se referem aos valores que sero informados ao usurio (veja figura 100);

    MsgBox ("Seja bem-vindo(a), " &Nome &"!", "Boas-vindas"): o comando

    MsgBox faz aparecer apenas uma mensagem, informando o texto que foi colocado

    entre parnteses (veja figura 101). Caso seja necessrio inserir valor de variveis,

    usado o smbolo & e depois o nome da varivel;

    End Sub: essa indica o fim do cdigo da macro, que foi aberta em Sub SeuNome.

    Esse apenas um exemplo de como configurar uma macro via programao no Calc. Para

    mais exemplos e informaes, acesse o site oficial do LibreOffice Basic:

    http://help.libreoffice.org/Basic/Basic_Help/pt . Agora veremos como criar uma funo que ser

    utilizada no Calc atravs do Basic

    Alm das macros, que vimos acima, possvel criar tambm funes para uso prprio no

    Calc. Aps ela estar programada, possvel utiliz-la da mesma maneira que se usa as funes

    nativas do Calc, ou seja, usando-se o sinal de igual, o nome da funo e os parmetros desejados.

    A diferena que neste caso os parmetros sero definidos por ns.

    Antes de comear, vamos fazer o seguinte: uma planilha onde digitaremos uma data e

    desejaremos saber em que dia da semana (por extenso) esta data caiu. Apesar de trabalhar com

    funes de datas, o Calc no possui nenhuma que faa isso diretamente. O que pode-se fazer

    utilizar a funo DIA.DA.SEMANA, que retornar um nmero de 0 a 6 ou de 1 a 7, dependendo de

    como for configurada a funo. Usaremos para este exemplo a contagem padro, que atribui valor 1

    para domingo, 2 para segunda-feira, 3 para tera-feira e assim por diante. A planilha dever ficar

    mais ou menos assim:

    83

  • Figura 102 Exemplo de tabela para demonstrao de funes

    A funo em B2 ficar =DIA.DA.SEMANA(A2), e retornou 7 porqu a data em A2 caiu

    num sbado, e assim sucessivamente.

    Feito isto, chegou a hora de criar a nossa funo. Para isso, iremos acessar o editor de

    macros, clicando em Ferramentas Macros Organizar Macros LibreOffice Basic e depois

    vamos clicar em Editar.

    Vamos criar uma funo que denominaremos DiaPorExtenso, e que contm apenas um

    parmetro, que ser o valor que resultou da funo DIA.DA.SEMANA. Todos os parmetros

    devem ser declarados no cabealho da funo, ao lado do nome da mesma. O cdigo para este

    exemplo em especfico ficou assim:

    Figura 103 Exemplo de cdigo criado para uma funo personalizada

    84

  • O cdigo acima recebe o valor da clula (Numero) e o compara com valores de 1 a 7 (Select

    Case Numero indica que o valor a ser comparado o da varivel Numero). Caso o valor de Numero

    seja um valor que no esteja entre 1 e 7, retornar a mensagem Dia Invlido (Case Else). Aps

    isso, devemos fechar a funo com End Function.

    Vamos testar agora na planilha. Vamos colocar o cursor em C2 e digitar

    =DIAPOREXTENSO(B2). Depois podemos copiar a funo para as linhas seguintes na mesma

    coluna. O resultado dever ficar assim:

    Figura 104 Exemplo de utilizao de funo criada pelo usurio

    Uma observao importante: as funes personalizadas no aparecem na lista do assistente

    de funes, pelo fato de terem sido criadas pelo usurio. Somente aparecem nesta lista as funes

    nativas, ou seja, aquelas que foram criadas junto com o Calc.

    Para finalizar, vamos ver mais um exemplo de utilizao de funes personalizadas no Calc.

    Suponhamos que voc deseja criar uma planilha para o clculo do IMC (ndice de Massa Corprea,

    medida utilizada calcular o peso ideal, e que calculado dividindo-se o peso pela altura ao

    quadrado). Vamos primeiramente digitar os valores necessrios na planilha:

    Figura 105 Exemplo para criao de funo para clculo do IMC

    Aps isso, iremos ao editor do Basic e digitaremos o cdigo abaixo:

    85

  • Figura 106 Exemplo da funo do IMC no BASIC

    A funo acima uma funo bem simples, sendo que seu clculo ocupou apenas uma

    linha. Isso ocorreu porqu no foi necessrio e