Você está na página 1de 87

1

LibreOffice Calc Avanado

Ueritom Ribeiro Borges


Revisor: Klaibson Natal Ribeiro Borges

Direitos Autorais
Este documento rotegido or Co !rig"t # $%&% or seus contribuidores listados abai'o( )oc* ode distribuir e+ou modificar este trabal"o, tanto sob os termos da Licena -.blica /eral /NU 0"tt :++111(gnu(org+licenses+g l("tml2, vers3o 4 ou osterior, ou da Licena de Atribui3o Creative Commons 0"tt :++creativecommons(org+licenses+b!+4(%+2, vers3o 4(% ou osterior( 5odas as marcas comerciais dentro desse guia ertencem aos seus res ectivos donos(

O trabal"o LibreOffice Calc Avanado de Ueritom Ribeiro Borges e (revisor) Klaibson Natal
Ribeiro Borges foi licenciado com uma Licena Creative Commons 6 Atribui3o 4(% N3o Ada tada(

Contribuidores
Ueritom Ribeiro Borges Klaibson Natal Ribeiro Borges 0Revisor2

Feedback
-or favor, direcione 7ual7uer coment8rio ou sugest3o sobre este documento ara: ueritom9!a"oo(com(br e+ou :laibson9gmail(com

Uma Palavra Para Voc


5alve; n<s nunca ven"amos a l"e con"ecer, mas escrevemos este livro ensando em a=udar )OC> no seu trabal"o, se=a no seu escrit<rio, sala de aula ou escrevendo um livro, assim como eu fi;( Este e6boo: gratuito at as rimeiras &%%% c< ias( ?as se a sua leitura l"e a=udar em algo, agradeceria se voc* udesse com rar uma edi3o im ressa no site "tt :++111(clubedosautores(com(br , es7uise or LibreOffice Calc Avanado, LibreOffice ou elo nome dos autores(

?uito obrigado anteci adamente ela sua artici a3o(

UER@5O? R@BE@RO BOR/EA KLA@BAON NA5AL R@BE@RO BOR/EA 0Revisor2

Agradecimentos

Bueremos agradecer a Ceus, 7ue nos orientou e nos guiou at con"ecer o Aoft1are Livre atravs do antigo BrOffice(Org a agora LibreOffice Buero agradecer D nossa m3e, Bertolina ?affei, ela ins ira3o 7ue ela sem re nos foi dada, ois escreveu um livro com oucos recursos na oca 0&EEF2 e sem re 7uisemos fa;er a mesma coisa e agora conseguimos( Acom an"em seu blog 111(bele;a6e6nature;a(blogs ot(com Buero agradecer aos desenvolvedores, alunos, gru o de usu8rios e tantas essoas 7ue es7ueci de mencionar, 7ue de um forma ou de outra, nos ins iraram na cria3o desse livro(

Os Autores
Ueritom Ribeiro Borges -rofessor de inform8tica na ?icromi' Gorma3o -rofissional, em -al"oa+AC e entusiasta da inform8tica( 5rabal"a no tambm Gaceboo:: com lHngua inglesa, onde ossui dois blogs: e 111(ingles araleigos(com e 111(inglescommusica(net, 7ue ossuem tambm suas res ectivas 8ginas 111(faceboo:(com+ingles araleigos 111(faceboo:(com+inglescommusica( Klaibson Natal Ribeiro Borges -<s6graduando em /er*ncia de -ro=etos de 5@ e Administra3o de Em resas, ambos Unisul, Universidade do Aul de Aanta Catarina, rofessor do Aenai+AC, Unidade A3o Ios nos cursos de A rendi;agem @ndustrial e diversos Cursos 5cnicos( 5rabal"ou em diversas escolas rofissionali;antes como instrutor de inform8tica e rotinas administrativas entre os anos de $%%J D $%%E( -ossui o blog, 111(libreoffice araleigos(org, tambm escreveu o eboo: LibreOffice -ara Leigos, su erando os && mil do1nloas( Gaceboo:: 111(faceboo:(com+livreoffice e 51itter: 9libo araleigos

U!"R#O
KNC@CE CE @LUA5RALMEA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((($ &( GUNLMEA @N5ER?EC@NR@AA E A)ANLACAA((((((((((((((((((((((((((((((((((((((((F &(& GUNLOO AE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((P &($ GUNLOO CON5(AE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&4 &(4 GUNLOO AO?AAE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&F &(J GUNLOO CON5(NQ?((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&E &(R GUNLOO CON5()ALOREA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((($% &(F GUNLMEA E E OU((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((($& &(S( GUNLOO -ROC)((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((($S $( RECURAOA AC@C@ONA@A CO CALC((((((((((((((((((((((((((((((((((((((((((((((((((((((((((4& $(& AU5OG@L5RO((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((4& $($ CLAAA@G@CAR CACOA(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((4S $(4 )AL@CALOO(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((J% $(J CEG@N@R NO?EA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((JS $(R -RO5E/ER CTLULAA(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((JE $(F EUERCKC@OA(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((R4 4( AAA@A5EN5E CE CACOA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((RJ 4(& 5ABELA C@NV?@CA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((RJ 4($ CR@ANCO /RNG@COA A -AR5@R CE U?A 5ABELA C@NV?@CA( (FF 4(4 EUERCKC@OA(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SJ J( ?ACROA((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SR J(& W -RO/RA?ANCO ?ACROA E GUNLMEA((((((((((((((((((((((((((((((((((((P% J($ 6 CR@ANCO GUNLMEA CALC NO BAA@C((((((((((((((((((((((((((((((((((((((((PJ

$ND#C% D% #&U 'RA()%


Gigura & W Lista de categorias((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((F Gigura $ W 5abela onde ser8 utili;ada a fun3o AE(((((((((((((((((((((((((((((((((((((((((((((((P Gigura 4 W Gun3o AE((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((E Gigura J W E'em lo de reenc"imento da fun3o AE(((((((((((((((((((((((((((((((((((((((((&% Gigura R W Resultado da fun3o AE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&% Gigura F W Outro e'em lo usando a fun3o AE(((((((((((((((((((((((((((((((((((((((((((((((((((&& Gigura S W Gun3o AE usando f<rmulas(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&$ Gigura P W -lanil"a de rea=uste reenc"ida((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&$ Gigura E W 5abela de e'em lo da fun3o CON5(AE(((((((((((((((((((((((((((((((((((((((((((&4 Gigura &% W 5abela de a oio((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((&4 Gigura && W Ianela de configura3o da fun3o CON5(AE(((((((((((((((((((((((((((((((((((&J Gigura &$ W -reenc"imento da fun3o CON5(AE(((((((((((((((((((((((((((((((((((((((((((((((&R Gigura &4 W E'em lo ara utili;a3o da fun3o AO?AAE(((((((((((((((((((((((((((((((((&F Gigura &J W 5abela de a oio ara a fun3o AO?AAE((((((((((((((((((((((((((((((((((((((((&S Gigura &R W -reenc"imento da fun3o AO?AAE((((((((((((((((((((((((((((((((((((((((((((((((&P Gigura &F W 5abela reenc"ida com o uso da fun3o AO?AAE(((((((((((((((((((((((((&P Gigura &S W 5abela de a oio da fun3o CON5(NQ?(((((((((((((((((((((((((((((((((((((((((&E Gigura &P W Com arativo entre CON5(NQ? e CON5()ALOREA((((((((((((((((((($% Gigura &E W 5abela verdade das funXes E e OU(((((((((((((((((((((((((((((((((((((((((((((((($$ Gigura $% W 5abela de controle de "oras((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((($4 Gigura $& W E'em lo do resultado da fun3o en7uanto o reenc"imento est8 incom leto$4 Gigura $$ W Resolvendo o roblema do reenc"imento incom leto((((((((((((((((((($J Gigura $4 W Resultado da funXes AE e OU(((((((((((((((((((((((((((((((((((((((((((((((((((((((($R Gigura $J W E'em lo ara uso da fun3o E com a fun3o AE(((((((((((((((((((((((((((($R Gigura $R W -reenc"endo a f<rmula ara selecionar os clientes(((((((((((((((((((((((((($F Gigura $F W 5abela reenc"ida com as funXes E e AE((((((((((((((((((((((((((((((((((((((($F Gigura $S W 5abela de e'em lo ara uso da fun3o -ROC)(((((((((((((((((((((((((((((($S Gigura $P W E'em lo de reenc"imento da fun3o -ROC)((((((((((((((((((((((((((((((($P Gigura $E W E'em lo de tabela reenc"ida com o au'Hlio de -ROC)((((((((((((((($E Gigura 4% W Corrigindo mensagem de erro(((((((((((((((((((((((((((((((((((((((((((((((((((((((((($E Gigura 4& W 5abela de e'em lo ara uso do recurso AutoGiltro(((((((((((((((((((((((((4& Gigura 4$ W O Xes de um dos menus de Giltragem(((((((((((((((((((((((((((((((((((((((((((4$

8 Gigura 44 W E'em lo de uso de Giltro Aim les(((((((((((((((((((((((((((((((((((((((((((((((((((4$ Gigura 4J W E'em lo de mais de uma filtragem(((((((((((((((((((((((((((((((((((((((((((((((((44 Gigura 4R W Cai'a de di8logo Giltro -adr3o((((((((((((((((((((((((((((((((((((((((((((((((((((((((44 Gigura 4F W E'em lo de uso de filtro sim les com filtro adr3o((((((((((((((((((((((((4J Gigura 4S W E'em lo de filtro usando mais de uma condi3o((((((((((((((((((((((((((((4R Gigura 4P W Resultado de filtragem usando mais de uma condi3o 0O erador E24R Gigura 4E W E'em lo de filtro com o erador OU(((((((((((((((((((((((((((((((((((((((((((((((4F Gigura J% W Resultado da filtragem usando o erador OU(((((((((((((((((((((((((((((((((((4F Gigura J& W 5abela de e'em lo ara recurso Classificar Cados(((((((((((((((((((((((((4S Gigura J$ W Cai'a de di8logo Classificar Cados(((((((((((((((((((((((((((((((((((((((((((((((((4P Gigura J4 W 5abela de ois de classificada(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((4P Gigura JJ W E'em lo de classifica3o usando dois critrios(((((((((((((((((((((((((((((((4E Gigura JR W Ianela de )alida3o de dados((((((((((((((((((((((((((((((((((((((((((((((((((((((((((J% Gigura JF W )alidando clulas selecionadas((((((((((((((((((((((((((((((((((((((((((((((((((((((((J& Gigura JS W Lista contendo os valores validados((((((((((((((((((((((((((((((((((((((((((((((((J$ Gigura JP W ?ensagem de erro adr3o de valida3o(((((((((((((((((((((((((((((((((((((((((((J$ Gigura JE W Ianela ara ersonali;a3o da mensagem de erro((((((((((((((((((((((((((((J4 Gigura R% W E'em lo da o 3o -arar((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((J4 Gigura R& W E'em lo da o 3o Aviso(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((JJ Gigura R$ W Outro e'em lo de valida3o((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((JR Gigura R4 W Cefinir Nomes((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((JS Gigura RJ W 5abela de a oio ara Cefinir Nomes(((((((((((((((((((((((((((((((((((((((((((((((JS Gigura RR W Ianela de digita3o de sen"a ara rote3o da lanil"a(((((((((((((((((((JE Gigura RF W N3o ossHvel modificar clulas rotegidas((((((((((((((((((((((((((((((((((((R% Gigura RS W -lanil"a utili;ada ara e'em lo de rote3o de clulas(((((((((((((((((((R% Gigura RP W Ianela de des rote3o de clulas((((((((((((((((((((((((((((((((((((((((((((((((((((((R& Gigura RE W E'em lo de f<rmula a arecendo, mesmo a clula estando blo7ueadaR$ Gigura F% W G<rmula Oculta((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((R$ Gigura F& W 5abela de e'em lo ara Assistente de Cados((((((((((((((((((((((((((((((((((RJ Gigura F$ W Aelecionando a origem dos dados((((((((((((((((((((((((((((((((((((((((((((((((((((RJ Gigura F4 W La!out do Assistente de dados(((((((((((((((((((((((((((((((((((((((((((((((((((((((((RR Gigura FJ W Resultado do assistente de dados(((((((((((((((((((((((((((((((((((((((((((((((((((((RF Gigura FR W Outro e'em lo de tabela dinYmica((((((((((((((((((((((((((((((((((((((((((((((((((RS Gigura FF W ?ais um e'em lo de tabela dinYmica((((((((((((((((((((((((((((((((((((((((((((((RP

9 Gigura FS W Ianela ara sele3o da fun3o do Cam o de Cados(((((((((((((((((((((((((RE Gigura FP W Alterando a fun3o da tabela dinYmica((((((((((((((((((((((((((((((((((((((((((((RE Gigura FE W ?ensagem informando 7ue n3o ossHvel alterar dados na tabela dinYmica F% Gigura S% W E'em lo mostrando 7ue a tabela dinYmica n3o atuali;ada automaticamente (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((F& Gigura S& W O 3o 7ue atuali;a a tabela dinYmica((((((((((((((((((((((((((((((((((((((((((((((F& Gigura S$ W 5abela dinYmica atuali;ada((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((F$ Gigura S4 W Ianela de filtragem ara tabelas dinYmicas((((((((((((((((((((((((((((((((((((((F$ Gigura SJ W E'em lo de configura3o de filtro ara 5abela CinYmica((((((((((((((F4 Gigura SR W Resultado de filtragem na tabela dinYmica((((((((((((((((((((((((((((((((((((((F4 Gigura SF W E'em lo de atuali;a3o da filtragem com atuali;a3o dos valores( FJ Gigura SS W Outro e'em lo de atuali;a3o da filtragem com atuali;a3o dos valores Gigura SP W Assistente de gr8fico W Escol"a do ti o de gr8fico((((((((((((((((((((((((((FF Gigura SE W Escol"a do intervalo de dados((((((((((((((((((((((((((((((((((((((((((((((((((((((((((FS Gigura P% W @ntervalo 7ue deve ser selecionado 0em amarelo2((((((((((((((((((((((((((((FP Gigura P& W Assistente de gr8fico W ersonali;a3o das sries de dados(((((((((((((FE Gigura P$ W Assistente de gr8fico W Escol"endo tHtulos e legendas(((((((((((((((((((((S% Gigura P4 W Assistente de gr8fico 6 e'em lo de reenc"imento dos Elementos do gr8fico (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((S& Gigura PJ W /r8fico de ois de ronto((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((S& Gigura PR W Ianela de escol"a de ti o de gr8fico(((((((((((((((((((((((((((((((((((((((((((((((((S$ Gigura PF W Configura3o do reenc"imento do gr8fico(((((((((((((((((((((((((((((((((((((S4 Gigura PS W E'em lo de gr8fico formatado(((((((((((((((((((((((((((((((((((((((((((((((((((((((((S4 Gigura PP W Ianela de grava3o de macro((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SR Gigura PE W 5abela ara e'em lo de utili;a3o de macros(((((((((((((((((((((((((((((((((SR Gigura E% W E'em lo de configura3o de macros(((((((((((((((((((((((((((((((((((((((((((((((SF Gigura E& W Ianela ara salvar a macro(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SF Gigura E$ W Ianela de sele3o de macros(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SS Gigura E4 W ?acro a <s e'ecutada((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SS Gigura EJ W E'cluindo ?acros((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SP Gigura ER W 5abela ara utili;a3o de novo e'em lo de macro((((((((((((((((((((((((((SP Gigura EF W Ianela Colar Es ecial(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((SE Gigura ES W 5abela a <s utili;a3o da macro((((((((((((((((((((((((((((((((((((((((((((((((((((((SE Gigura EP W Ianela de edi3o do LibreOffice Basic(((((((((((((((((((((((((((((((((((((((((((((P% FR

10 Gigura EE W C<digo ara ?acro((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((PJ Gigura &%% 6 ?acro em e'ecu3o 6 arte &((((((((((((((((((((((((((((((((((((((((((((((((((((((((((PJ Gigura &%& W ?acro em e'ecu3o W arte $((((((((((((((((((((((((((((((((((((((((((((((((((((((((PJ Gigura &%$ W E'em lo de tabela ara demonstra3o de funXes((((((((((((((((((((((((PF Gigura &%4 W E'em lo de c<digo criado ara uma fun3o ersonali;ada(((((((((((PS Gigura &%J W E'em lo de utili;a3o de fun3o criada elo usu8rio((((((((((((((((((((PP Gigura &%R W E'em lo ara cria3o de fun3o ara c8lculo do @?C((((((((((((((((((PP Gigura &%F W E'em lo da fun3o do @?C no BAA@C(((((((((((((((((((((((((((((((((((((((((PP Gigura &%S W Gun3o @?C a <s reenc"ida((((((((((((((((((((((((((((((((((((((((((((((((((((((((PE

11

*+ FUN()% #N'%R!%D#"R#A % AVAN(ADA


O LibreOffice Calc ossui in.meras funXes, com as mais diversas utilidades e nHveis de dificuldades diferentes( Essas funXes s3o se aradas or categorias, 7ue s3o as seguintes: Banco de dadosZ Cata e "oraZ GinanceirasZ @nformaXes L<gicasZ ?atem8ticasZ ?atriciaisZ EstatHsticasZ -lanil"aZ 5e'toZ Au lemento(

ig!ra 1 " #ista $e %ategorias A lista da figura acima ode ser locali;ada ao acessar o Assistente de GunXes 0bot3o 2( Ao selecionar uma categoria, o assistente mostra a enas as funXes 7ue ertencem D7uela categoria( Alm disso, e'istem tambm as o Xes 'odas as Fun,-es, 7ue mostra a lista com leta

12 inde endente de categoria, e Rec.m Utili/adas, 7ue mostra a enas as 7ue foram usadas recentemente( Neste ca Htulo veremos algumas das funXes mais utili;adas, onde ser8 dada uma breve descri3o da mesma, alm de ser informado 8 7ual categoria ertence e ser3o utili;ados e'em los, ara mel"or com reens3o(

13

*+* FUN(0O %
Essa fun3o ertence D categoria l<gicas, e utili;ada 7uando 7ueremos 7ue o Calc faa uma com ara3o de valores e retorne um te'to, n.mero ou faa um c8lculo de endendo do resultado da com ara3o( A fun3o efetua um teste 07ue geralmente feito com arando uma clula com um valor de refer*ncia2, e este teste retornar8 verdadeiro ou falso( Esta fun3o ossui tr*s arYmetros: 'este 1obrigat2rio34 a com ara3o 7ue ser8 feita ara verificar se a condi3o verdadeira ou falsa( -ara isso, odem ser utili;ados os o eradores [ 0maior 7ue2, \ 0menor 7ue2, ] 0igual2, [] 0maior ou igual a2, \] 0menor ou igual a2 e \[ 0diferente de2, alm de outras funXesZ Valor5ent6o 1o7cional34 o 7ue o Calc far8 caso o teste retorne verdadeiro( -ode ser um te'to 0neste caso, o valor deve estar entre as as2, um n.mero ou at mesmo uma fun3oZ Valor5sen6o 1o7cional34 o 7ue o Calc far8 caso o teste retorne Galso( Os itens ossHveis s3o os mesmos do )alor^ent3o( -ara mel"or com reens3o, vamos utili;ar o e'em lo da imagem abai'o, 7ue re resenta um boletim escolar, 7ue contm as 7uatro notas bimestrais e a mdia de cada uma:

ig!ra 2 " &abela on$e ser' !tili(a$a a )!n*+o ,Como todos sabemos, a mdia mHnima ara 7ue o aluno se=a a rovado S,%( Baseado nisso, 7ueremos 7ue na coluna resultado a area a alavra A-RO)ACO, caso sua mdia ten"a sido maior ou igual a S,% e RE-RO)ACO caso sua mdia ten"a sido inferior a S( -ara isso, rimeiramente osicionamos o cursor na clula dese=ada 0no caso, /$2, em seguida abrimos o assistente de funXes e locali;amos a fun3o AE e clicamos em -r<'imo( A tela 7ue ser8 e'ibida a seguinte:

14

ig!ra 3 " !n*+o ,Ceve6se ent3o reenc"er os valores 'este8 valor5ent6o e valor5sen6o( Em teste, deve6 se colocar 7ue se est8 verificando e o valor 7ue se est8 com arando 0valor de refer*ncia2( Em nosso e'em lo, o valor 7ue est8 sendo verificado a ?dia, 7ue est8 em G$, e o valor de refer*ncia S, ois a mdia mHnima dese=ada S( Como a mdia deve ser maior ou igual a S ara 7ue o aluno se=a a rovado em cada disci lina, deve6se digitar ent3o G$ [] S no cam o 'este( Como n3o sabemos de antem3o se essa condi3o ser8 verdadeira ou falsa 0e tambm or7ue o valor ode variar2, temos 7ue _ rever` as duas situaXes( -ara isso e'istem os cam os Valor5ent6o8 7ue rev* o 7ue dever8 ser feito 7uando o teste resultar verdadeiro, e Valor5sen6o8 7ue rev* caso se=a falso( Neste e'em lo ser8 reenc"ido _A-RO)ACO` ara Valor5ent6o 0sem re 7ue for um te'to, dever8 ser colocado entre as as2 e _RE-RO)ACO` ara Valor5sen6o( A =anela dever8 ficar assim:

15

ig!ra 4 " -.em/lo $e /reen%0imento $a )!n*+o ,Na clula /$ a arecer8 escrito _RE-RO)ACO`, ois a mdia em G$ F,P 7ue menor 7ue S, resultando ortanto em GALAO( Caso se=a alterada alguma das notas ara cima, de modo 7ue a mdia fi7ue su erior a S, o valor de /$ mudar8 automaticamente ara _A-RO)ACO`, ois a condi3o assar8 a ser verdadeira( A <s isso, ode6se co iar a f<rmula de /$ e co iar ara as clulas abai'o dela, 7ue o Calc atuali;ar8 a f<rmula ara as lin"as corres ondentes, e a lanil"a ficar8 como na figura abai'o:

ig!ra 5 " Res!lta$o $a )!n*+o ,No e'em lo acima, foi utili;ado a enas te'to ara os resultados )ERCACE@RO e GALAO desta fun3o( No entanto, nada im ede 7ue no lugar disso se=am utili;ados n.meros e at mesmo outras f<rmulas e+ou funXes( )e=amos outro e'em lo:

16

ig!ra 6 " 1!tro e.em/lo !san$o a )!n*+o ,Au on"a 7ue a tabela acima se=a a fol"a de agamento de uma em resa, e 7ue todos receber3o rea=uste salarial baseado no seu sal8rio, de acordo com a lista a seguir: -ara 7uem gan"a at Ra&(J%%, o rea=uste ser8 de &%bZ -ara 7uem gan"a acima desse valor, o rea=uste ser8 de Sb( O valor de refer*ncia nesse novo e'em lo Ra&(J%%, ortanto o teste ser8 B9 :; *<== 0 ara o funcion8rio Ricardo, ois o valor de seu sal8rio est8 em B$2( Em valor5ent6o, usa6se a f<rmula B9 > *=?, ois o rea=uste 0&%b2 calculado em cima do sal8rio 0B$2( Em valor5sen6o, usa6se B9 > @?(

Gigura S W Gun3o AE usando f<rmulas

17 -ara calcular o valor do sal8rio rea=ustado 0C$2, usa6se a f<rmula ] B9AC9, ois o valor do novo sal8rio ser8 o sal8rio atual 0B$2 mais o valor do rea=uste 0C$2( -ara as lin"as seguintes, a f<rmula ser8 a mesma, devendo6se a enas substituir B$ or B4, BJ, BR, etc( e C$ or C4, CJ, CR((( A lanil"a com leta ficar8 assim:

ig!ra 8 " 2lanil0a $e rea3!ste /reen%0i$a

18

*+9 FUN(0O CON'+ %


Esta fun3o da categoria ?atem8ticas, e usada sem re 7ue dese=amos saber a 7uantidade de ve;es 7ue determinado valor se re ete num intervalo( )e=a a tabela abai'o:

ig!ra 9 " &abela $e e.em/lo $a )!n*+o 41N&5,Essa tabela simula as vendas de uma concession8ria de veHculos em uma semana( -ara facilitar, inseri a enas o nome do cliente e o veHculo 7ue ele levou, e colo7uei a enas 4 diferentes tambm ara n3o com licar( Como a tabela e7uena, fica f8cil verificar 7uantos veHculos de cada modelo foram vendidos( @magine agora se a tabela contivesse R%% registros e &R modelos diferentes de veHculos( Aeria bem mais trabal"oso n3oc -ara isso e'iste esta fun3o( )eremos agora como usar a fun3o CON5(AE ara _contar` 7uantas ve;es cada carro foi vendido nesta tabela( Garemos uma nova tabela 7ue mostrar8 os totais:

ig!ra 10 " &abela $e a/oio

19 Calcularemos rimeiro o total de vendas do /ol( -ara isso, osicione o cursor na clula E4 e abra o Assistente de GunXes( Locali;e ent3o a fun3o CON5(AE 0categoria ?atem8ticas2 e cli7ue em -r<'imo( A =anela 7ue dever8 a arecer a seguinte:

ig!ra 11 " 6anela $e %on)ig!ra*+o $a )!n*+o 41N&5,A fun3o CON5(AE ossui dois argumentos, 7ue s3o obrigat<rios: o intervalo, 7ue indica em 7uais clulas ser8 feita a verifica3o, e crit.rios, 7ue define o 7ue ser8 verificado( No cam o critrio, ode6se usar os o eradores matem8ticos \, [, \[, \], [] e ]( No caso do sinal de igual 0]2, este ode ser omitido, digitando6se a enas o valor a ser es7uisado, 7ue ode ser te'to 0entre as as2, n.meros ou um endereo de clula, e neste caso o Calc com arar8 com o valor da clula em 7uest3o( -ara nosso e'em lo, o intervalo ser8 aBa$:aBa&%, ois s3o essas clulas 7ue cont*m os valores a serem verificados( I8 em critrios, ode6se digitar tanto _/ol` 0te'to2 7uanto C4 0clula de refer*ncia, 7ue contm a alavra /ol2( No entanto, mel"or usar o endereo da clula or dois motivos: o rimeiro 7ue, se o valor de C4 for modificado, o CALC automaticamente recontar8 ara este novo valor, e o segundo 7ue facilita ara co iar a f<rmula e colar nas lin"as seguintes, ois o CALC atuali;a de acordo com a lin"a( @sso 7uer di;er 7ue se voc* co iar a f<rmula 7ue est8 na clula E4 ara a clula EJ, a o cam o critrios ser8 atuali;ado automaticamente ara CJ, ois nesse caso est8 se referindo D7uela lin"a e far8 a verifica3o ara o valor seguinte 0Go'2( I8 se for

20 reenc"ido com _/ol`, o Calc continuar8 com arando com /ol, mesmo 7ue eu dese=e com arar agora o Go'( A =anela reenc"ida dever8 ficar assim:

ig!ra 12 " 2reen%0imento $a )!n*+o 41N&5,A <s o reenc"imento da f<rmula em todas as clulas, o Calc dever8 retornar os seguintes valores: /OL ] $Z GOU ] JZ Ka] 4(

21

*+B FUN(0O O!A %


5ambm da categoria ?atem8ticas, a fun3o AO?AAE efetua a soma dos valores em um determinado intervalo, baseado na condi3o estabelecida( )amos considerar, como e'em lo, a tabela abai'o, 7ue contm as vendas dos funcion8rios de uma lo=a em um determinado dia:

ig!ra 13 " -.em/lo /ara !tili(a*+o $a )!n*+o ,178,A lo=a do e'em lo acima ossui tr*s vendedores: Ios, Gernanda e Arnaldo( Aabemos 7ue o total de vendas dos tr*s foi Ra&(SS&,%%( ?as 7uanto vendeu cada umc -ara saber, recorremos D fun3o AO?AAE( Antes, orm vamos colocar fa;er outra tabelin"a do lado, com o nome de cada vendedor, ara 7ue o Calc retorne o valor de venda de cada um:

ig!ra 14 " &abela $e a/oio /ara a )!n*+o ,178,-

22 Ce ois de criarmos a segunda tabela, colocaremos o cursor em ER, abriremos o assistente de funXes, locali;aremos a fun3o AO?AAE e clicaremos em -r<'imo( Esta fun3o ossui tr*s arYmetros: #ntervalo 1obrigat2rio3: o intervalo de clulas 7ue contm os valores a serem verificados( No nosso e'em lo, de A$ at A&$ 0A$:A&$2Z Crit.rios 1obrigat2rio3: funciona da mesma maneira 7ue na fun3o AO?AAE( -ara o caso do Arnaldo, deve ser reenc"ido com ER ou _Arnaldo`Z oma5intervalo 1o7cional3: define o intervalo 7ue ser8 somado nas lin"as em 7ue o critrio for atendido( Ae for dei'ado em branco, o Calc assume 7ue o soma^intervalo igual ao intervalo( Como n3o isso 7ue 7ueremos, reenc"eremos este cam o com os valores corretos, 7ue no caso B$:B&$( O reenc"imento dever8 ficar assim:

ig!ra 15 " 2reen%0imento $a )!n*+o ,178,O 7ue foi feito acima foi o seguinte: nas lin"as em 7ue a coluna A contm _Arnaldo`, soma6se o valor da coluna B na mesma lin"a( Caso contr8rio, n3o soma( O valor da f<rmula ara o caso do Arnaldo dever8 ser Ra4$R,%%, o de Gernanda RaPSP,%% e o de Ios ser8 RaRFP,%%, de acordo com a figura abai'o:

23

ig!ra 16 " &abela /reen%0i$a %om o !so $a )!n*+o ,178,-

24

*+< FUN(0O CON'+NC!


-ertencente D categoria matem8ticas, a .nica fun3o desta fun3o contar 7uantas clulas contm valores numricos no intervalo determinado, ignorando te'to e clulas em branco( -ara e'em lificar, usaremos novamente o boletim 7ue foi usado ara e'em lificar a fun3o AE( Au on"amos 7ue dese=8ssemos saber 7uantas clulas ossuem valores numricos 0notas2 em todo o intervalo da tabela, 7ue vai de A& at /F:

ig!ra 17 " &abela $e a/oio $a )!n*+o 41N&5N97 Aelecionaremos ent3o a clula B&% ara inserir a fun3o e digitaremos

]CON5(NQ?0A&:/F2, ou se

referir, c"amar o Assistente de funXes, locali;ar a fun3o

CON5(NQ? e, em valor &, digitar o intervalo( O valor 7ue a fun3o retornar8 ser8 $R, ois essa a 7uantidade de clulas 7ue a ossuem valores numricos na7uele intervalo(

25

*+D FUN(0O CON'+VA&OR%


Ciferentemente da fun3o CON5(NQ?, 7ue ertence D categoria ?atem8ticas, esta fun3o ertence D categoria EstatHsticas( En7uanto a rimeira fun3o soma a enas clulas 7ue contm n.meros, a fun3o CON5()ALOREA soma clulas 7ue ossuem 7ual7uer ti o de dados 0te'to, n.mero, sinais e at es ao em branco2 n3o contando a enas clulas va;ias( T im ortante ressaltar 7ue se for ressionada a barra de es aos no teclado, o Calc n3o a considera mais a7uela clula como va;ia, e ser8 contada na fun3o( Como e'em lo, usaremos o mesmo e'em lo acima, GunXes( )e=a o com arativo das duas funXes no mesmo e'em lo: ara verificarmos a diferena( -on"a o cursor em B&& e digite ]CON5()ALOREA0A&:/F2, ou se referir use o Assistente de

ig!ra 18 " 4om/arativo entre 41N&5N97 e 41N&5:8#1R-,

26

*+E FUN()% E % OU
Estas funXes foram colocadas =untas, ois tem fun3o muito semel"ante: ambas fa;em com ara3o de elo menos duas condiXes e retornam )ERCACE@RO ou GALAO, de endendo das condiXes( As duas funXes ertencem D categoria L<gicas( 5anto a fun3o E 7uanto a fun3o OU s3o raramente usadas so;in"as, ois se o forem, o resultado ser8 a enas a alavra )ERCACE@RO ou a alavra GALAO( Elas s3o utili;adas geralmente de au'iliares ara outras funXes, rinci almente a fun3o AE( Antes de vermos um e'em lo de cada fun3o im ortante entendermos a diferena de uma ara outra( Como informado, ambas as funXes recisam de elo menos duas condiXes ara funcionar, o 7ue fa; com 7ue a sinta'e das duas se=a a seguinte: Gun3o E ]E0condi,6o *F condi,6o 9Z (((condi3o N2Z Gun3o OU ]OU0condi,6o *F condi,6o 9Z (((condi3o N2 As condiXes & e $ foram negritadas or serem obrigat<rias, en7uanto 7ue as restantes s3o o cionais( Cada condi3o inde endente, ou se=a, uma ode ser verdadeira e outra falsa( A fun3o retornar8 )ERCACE@RO ou GALAO de endendo das condiXes, e obedecendo aos seguintes critrios: Gun3o E: retornar8 )ERCACE@RO somente se 5OCAA as condiXes forem verdadeiras( davendo elo menos uma falsa, o resultado ser8 GALAOZ Gun3o OU: retornar8 GALAO a enas se 5OCAA as condiXes forem falsas( davendo elo menos uma verdadeira, o resultado ser8 )ERCACE@RO( -ara e'em lificar, vamos ver alguns e'em los: ]E0$[4ZR]J2 retorna GALAO, ois $ n3o maior 7ue 4 0GALAO2 e R n3o igual a J 0GALAO2Z ]E04&[&PZ$4\$%2 retorna GALAO, uma falsa, retorna GALAOZ ]E04]4Z S [ $2 retorna )ERCACE@RO, ois 4 igual a 4 e S maior 7ue $( Como todas as condiXes s3o verdadeiras, retornou )ERCACE@ROZ ]OU04]JZR[S2 retorna GALAO, ois 4 n3o igual a J 0GALAO2 nem R maior 7ue S( Buando ambas as condiXes s3o falsas, o resultado GALAOZ ois a esar de 4& ser maior 7ue &P 0 )ERCACE@RO2, $4 n3o menor 7ue $% 0GALAO2( Como temos uma verdadeira e

27 ]OU0J[$Z04$+J]E22 retorna )ERCACE@RO, ois J maior 7ue $

0)ERCACE@RO2( ?esmo a segunda condi3o 04$+J]E2 sendo falsa, na fun3o OU necess8rio 7ue a enas uma condi3o se=a verdadeira )ERCACE@ROZ ]OU0&R[&%Z&S\$%2 retorna )ERCACE@RO, ois ambas s3o verdadeiras( O uso das funXes E e OU ode ser resumido nas tabela abai'o: E OU ) G ) G )erdadeiro ) G ) ) Galso G G ) G ig!ra 19 " &abela ver$a$e $as )!n*;es - e 1U Como mencionado anteriormente, essas duas funXes s3o geralmente utili;adas como au'iliares de outras funXes, rinci almente a fun3o AE( )amos ver um e'em lo de cada uma delas como au'iliar, iniciando ela fun3o OU( @magine 7ue voc* trabal"a or "ora e or isso recisa ter um controle de 7uantas "oras trabal"ou no m*s()oc* oderia fa;er uma lanil"a arecida com a seguinte: ara 7ue a fun3o retorne

ig!ra 20 " &abela $e %ontrole $e 0oras A rincH io, tudo arece estar certo, ois foi usada uma fun3o 7ue calcula a diferena entre a "ora de saHda 0C$2 e a "ora de entrada 0a f<rmula usada em C$ foi ;C9GB92( Essa fun3o vai calcular o 7ue dese=amos, 7ue a 7uantidade de "oras trabal"ada em cada dia( -orm temos um e7ueno roblema: en7uanto tivermos digitado a enas um dos valores 0B$ ou C$2, o valor de C$ ficar8 incorreto, ois como ele calcula a diferena entre B$ e C$ e um dos valores est8 em branco, o Calc considera esse valor como sendo ;ero( )e=a:

28

ig!ra 21 " -.em/lo $o res!lta$o $a )!n*+o en<!anto o /reen%0imento est' in%om/leto No caso da figura acima, C4 est8 em branco e or isso o E'cel considera o valor faltante como sendo ;ero 0convertido em "oras igual D meia6noite2( Como das &J"s at a meia6noite se assam &% "oras, esse valor 7ue o Calc reenc"e em C4( -ara evitar 7ue isso ocorra, odemos a erfeioar a f<rmula em C4 ara 7ue o c8lculo se=a feito a enas 7uando ambos os valores estiverem reenc"idos, caso contr8rio C4 fica em branco( A f<rmula a ser usada a seguinte:

Gigura $$ W Resolvendo o roblema do reenc"imento incom leto O 7ue foi feito acima foi o seguinte: usamos uma fun3o AE, 7ue em seu 5este usa uma fun3o OU( O trec"o ]OU0B4]``ZC4]``2 verifica se B4 ou C4 0ou ambas2 est3o em branco( En7uanto elo menos uma das duas estiver em branco, retornar8 )ERCACE@RO e o valor em C4 ser8 em branco tambm( -ara 7ue o 7ue teste retorne GALAO, necess8rio 7ue ambas as clulas este=am reenc"idas, e nesse caso a fun3o e'ecutar8 o c8lculo 05este^sen3o2( )e=a isso na r8tica:

29

ig!ra 23 " Res!lta$o $a )!n*;es ,- e 1U A figura acima mostra tr*s situaXes: a enas B4 reenc"ido, a enas C4 reenc"ido e ambos reenc"idos( Note 7ue a enas no .ltimo caso, o valor de C4 a arece, 7ue era o nosso ob=etivo inicial( )amos agora ver um e'em lo da fun3o E dentro da fun3o AE( Au on"amos 7ue voc* ten"a a lista de clientes abai'o, e voc* vai fa;er a oferta de algum roduto:

Gigura $J W E'em lo ara uso da fun3o E com a fun3o AE No entanto, esta oferta n3o ser8 feita a todos, e sim a enas aos 7ue atendem aos critrios estabelecidos, 7ue no nosso caso : idade a artir de 4% anos e renda a artir de Ra&(R%%( Na coluna C, dever8 ser escrito _A@?` ara os clientes 7ue atenderem os dois critrios e _NOO` ara os clientes 7ue atenderem a enas um dos critrios 0tanto fa; se a idade ou a renda2 ou nen"um(

30

ig!ra 25 " 2reen%0en$o a )=rm!la /ara sele%ionar os %lientes O 7ue foi feito no e'em lo da figura acima foi: rimeiro usamos a fun3o E no teste da fun3o AE ara 7ue a mesma verifi7ue 7uais atendem os critrios determinados( -ara os 7ue atenderem os critrios, retornar8 A@? 0valor^ent3o2, e ara os 7ue n3o atenderem, retornar8 NOO 0valor^sen3o2( Ce ois de reenc"er a f<rmula ara a rimeira lin"a, ode6se co iar e colar ara todas as lin"as seguintes, na coluna C( A tabela reenc"ida dever8 ficar assim:

ig!ra 26 " &abela /reen%0i$a %om as )!n*;es - e ,-

31

*+@+ FUN(0O PROCV


Esta fun3o ertence D categoria -lanil"a e utili;ada em matri;es de dados 0tabelas com elo menos duas lin"as e duas colunas2 ara es7uisa de valores( Ela es7uisa um valor na rimeira coluna da matri; e, caso se=a locali;ado, retorna o valor de 7ual7uer coluna, na lin"a onde o valor rocurado foi locali;ado( )amos a um e'em lo: digamos 7ue voc* tem uma locadora de filmes e dese=a controlar as vendas atravs de uma lanil"a do Calc( A tabela oderia ser como na figura abai'o:

ig!ra 27 " &abela $e e.em/lo /ara !so $a )!n*+o 2R14: Na tabela acima, as colunas A at E ser3o usadas ara registros das locaXes e das colunas d at I constam os filmes 7ue est3o cadastrados 0obviamente uma locadora teria muito mais filmes, 7ue oderiam inclusive estar em outra lanil"a, orm foram usados oucos a enas ara e'em lificar2( O 7ue a fun3o -ROC) ode fa;er or n<s nesse caso : ao reenc"ermos o nome do filme, na coluna B, odem ser reenc"idos _automaticamente` o valor e a categoria do mesmo, se for locali;ado na tabela de filmes( Antes de usarmos a fun3o, ve=amos os arYmetros da mesma: Crit.rios de 7esHuisa 1obrigat2rio34 o valor 7ue ser8 rocurado 0no nosso caso o nome do filme2, lembrando 7ue essa fun3o es7uisa a enas na rimeira coluna da tabelaZ !atri/ 1obrigat2rio34 o intervalo onde est3o os dadosZ $ndice 1obrigat2rio34 o n.mero da coluna onde se dese=a 7ue se retorne o valor( No nosso caso, a coluna d a coluna &, a coluna dos valores a $ e a das categorias a n.mero 4( Ordem de classiIica,6o 1o7cional34 ode ser reenc"ido com )ERCACE@RO 0ou o n.mero &2, GALAO 0ou o n.mero %2 ou dei'ado em branco( Caso se=a )ERCACE@RO, ser8 necess8rio classificar os dados em ordem alfabtica, caso

32 contr8rio dar8 mensagem de erro( Ae for falso, n3o necess8rio classificar( Ae for dei'ado em branco, assumir8 o valor )ERCACE@RO( Agora sim vamos D tabela( Aelecione a clula do valor 0C$2, abra o Assistente de GunXes e digite o seguinte:

ig!ra 28 " -.em/lo $e /reen%0imento $a )!n*+o 2R14: Em critrio de es7uisa, foi utili;ado o valor B$ ois nessa clula 7ue contm o nome do filme( A <s o mesmo ser digitado, ser8 es7uisado na rimeira coluna da tabela dos filmes 0d$:IE2( O Hndice $ indica 7ue se o critrio for ac"ado na rimeira coluna, retornar8 o valor 7ue est8 na coluna $ 0valor2 da lin"a onde o critrio foi locali;ado( Geito isto, selecione C$ e faa o mesmo rocedimento( A .nica altera3o 7ue o Hndice ser8 4 e n3o mais $, ois agora dese=amos saber a categoria, 7ue a terceira coluna da tabela( )e=a abai'o um e'em lo de como oderia ficar a tabela reenc"ida:

ig!ra 29 " -.em/lo $e tabela /reen%0i$a %om o a!.>lio $e 2R14:

33

)oc* deve ter notado 7ue na lin"a S a arecem duas ve;es o valor eN+A( @sso ocorre or7u* o valor de refer*ncia BS, 7ue est8 em branco( Como o valor em branco 0_`2 n3o e'iste na tabela, a arece o eN+A, 7ue significa Valor n6o dis7onJvel( -ara corrigir esse erro sim les, basta usar uma fun3o AE ara 7ue, se BS estiver em branco, o valor da clula se=a _`0em branco2, e e'ecute a fun3o -ROC) a enas se e'istir algum te'to( A fun3o ara CS ficaria mais ou menos assim:

ig!ra 30 " 4orrigin$o mensagem $e erro Aeria interessante usar esta fun3o a artir =8 da rimeira lin"a, ois sem re 7ue a clula onde o valor ser8 es7uisado estiver em branco, a arecer8 esta mensagem( T .til inseri6la logo na rimeira lin"a, e assim 7ue ela estiver concluHda, co iar e colar a f<rmula nas lin"as seguintes(

34

9+ R%CUR O AD#C#ONA# DO CA&C


Alm de funXes, o Calc ossui v8rios recursos 7ue odem agili;ar e+ou facilitar a vida de 7uem est8 utili;ando o soft1are( A3o recursos ara classificar, limitar valores, roteger, etc( )amos estudar alguns deles a artir de agora(

9+* AU'OF#&'RO
O AutoGiltro um recurso 7ue ermite selecionar alguns valores da lanil"a, 7ue atendem ao0s2 critrio0s2 es ecificado0s2( -ode6se usar tanto critrios sim les de es7uisa 7uanto critrios ersonali;ados( -ara acessar, deve6se colocar o cursor em 7ual7uer clula da lin"a 7ue contm o r<tulo 0nome dos cam os, e': nome, idade, etc2 e de ois selecionar o menu Cados W Giltrar W AutoGiltro( Co lado de cada clula da lin"a selecionada a arecer8 o sHmbolo odemos iniciar a filtragem de valores( )e=a e'em lo: , 7ue indica 7ue =8

ig!ra 31 " &abela $e e.em/lo /ara !so $o re%!rso 8!to iltro Como voc* deve ter ercebido, o sHmbolo mencionado no ar8grafo anterior a areceu ao lado de Nome, @dade e Ae'o, 7ue est3o todos na mesma lin"a( Esse sHmbolo um bot3o clic8vel, e 7uando se clica em cima de um deles a arecer3o os seguintes itens: 'odas4 essa o 3o utili;ada 7uando foi a licado algum filtro e 7ueremos 7ue todos os itens se=am mostrados novamente( T como se a filtragem fosse desfeitaZ

35 *= 7rimeiros4 mostra a enas os de; rimeiros itens da lista ara a7uele filtro, inde endentemente de outros critriosZ Filtro Padr6o4 ermite usar critrios ersonali;ados de filtro( Aer8 estudado mais adiante( Alm dessas tr*s o Xes, a arecer3o logo abai'o alguns itens, 7ue nada mais s3o do 7ue os itens 7ue constam na7uela coluna( -or e'em lo, se selecionarmos o bot3o do lado da coluna C 0Ae'o2, a arecer3o ? e G, 7ue s3o as o Xes dis onHveis ara esta coluna:

ig!ra 32 " 1/*;es $e !m $os men!s $e iltragem Ae clicarmos na o 3o f?g, a lista ser8 filtrada, e ser3o mostrados a enas as lin"as 7ue contm ? no se'o:

ig!ra 33 " -.em/lo $e !so $e iltro ,im/les Note 7ue, assim 7ue um filtro a licado a uma coluna, o bot3o muda de cor, assando a ficar a;ul( Ae forem a licados filtros a outras colunas, acontecer8 o mesmo com elas:

36

ig!ra 34 " -.em/lo $e mais $e !ma )iltragem No caso acima, selecionamos o valor f-ablog na coluna de Nomes, e como e'istia a enas um -ablo, foi o 7ue retornou( Caso "ouvessem mais, seria mostrado um em cada lin"a( Alm dos filtros sim les, e'iste tambm a o 3o Giltros -adr3o 07ue nada mais s3o 7ue filtros -ersonali;ados2( Au on"amos 7ue 7uisssemos visuali;ar todas as essoas do se'o masculino cu=a idade se=a maior 7ue $R anos( Nesse caso, rimeiramente temos 7ue selecionar f5odasg na coluna Nome, ara voltar como estava antes( A <s isso, selecionamos a o 3o fGiltro -adr3og( A seguinte cai'a de di8logo surgir8:

ig!ra 35 " 4ai.a $e $i'logo iltro 2a$r+o Nesta cai'a de di8logo e'istem: Nome do cam7o4 7ual cam o ser8 utili;ado na filtragem 0neste e'em lo, e'istem as o Xes Ae'o, nome e @dade2Z Condi,6o4 contm um o erador matem8tico 7ue ser8 usado ara com ara3o, os 7uais s3o os seguintes: ], [, \, [], \] e \[, 7ue =8 foram estudados anteriormente, alm das seguintes o Xes: o !aior4 mostra os n maiores valores da lista( -or e'em lo, se voc* selecionar esta o 3o e em valor digitar R, a arecer3o a enas os R maiores valores da listaZ o !enor4 idem ao anterior, orm com os menores( o !aior ?4 mostra os nb maiores valores da lista( -or e'em lo, se sua lista contm R% valores e voc* seleciona esta o 3o e em valor digita 4%, ser3o mostrados a enas os &R maiores valores 0&R e7uivale a 4%b de R%2Z

37 o !enor ?4 idem ao anterior, orm com os menores( Valor4 o valor de refer*ncia, 7ue ser8 com arado com os outros ara 7ue se decida 7uais valores ser3o mostrados e 7uais n3o ser3o( )oltando ao nosso e'em lo, ara 7ue se=am mostrados a enas os 7ue tem mais de $R anos, configure da seguinte maneira: Nome do cam7o: @dadeZ Condi,6o: [ 0maior2Z Valor: $R( Cli7ue em OK( A tabela dever8 ficar assim:

ig!ra 36 " -.em/lo $e !so $e )iltro sim/les %om )iltro /a$r+o Ca mesma maneira, odem ser usados filtros ara calcular valores inferiores a um valor ', iguais ou diferentes( T necess8rio a enas ter cuidado com o maior 0[2 e maior ou igual 0[]2, ois no rimeiro caso ser3o locali;ados a enas os valores 7ue s3o su eriores ao valor determinado, en7uanto no segundo caso o valor entra =unto na lista, caso "a=a( -or e'em lo: se tivssemos colocado no e'em lo acima ara locali;ar os valores maiores ou iguais a $R, e "ouvesse $R na lista, o mesmo teria sido mostrado( O filtro adr3o ode ser usado ara filtrar mais de uma condi3o ao mesmo tem o( -or e'em lo, se 7uisermos 7ue se=a mostrado a enas os 7ue t*m idade entre $% e 4% anos, inclusive, n3o ser8 ossHvel usando a enas filtro sim les( 5eremos 7ue acessar o filtro adr3o ara este caso( No filtro adr3o odem ser usados os o eradores E e OU, 7ue tem o mesmo sentido das funXes E e OU, vistas anteriormente( Ent3o, ara o e'em lo do ar8grafo anterior, configurHamos da seguinte maneira:

38

ig!ra 37 " -.em/lo $e )iltro !san$o mais $e !ma %on$i*+o No e'em lo acima, foi usado filtro E, 7ue s< retorna os valores em 7ue todas as condiXes forem verdadeiras( No nosso e'em lo, as condiXes foram: idade maior ou igual a $% E idade menor ou igual a 4%( Buem tem R$, or e'em lo, atende D rimeira condi3o, 7ue idade maior ou igual a $%, orm n3o atende D segunda, 7ue idade menor ou igual a 4%( -or isso, n3o mostrado( A lista 7ue contm os valores 7ue atenderam aos dois critrios a seguinte:

ig!ra 38 " Res!lta$o $e )iltragem !san$o mais $e !ma %on$i*+o (1/era$or -) I8 o o erador OU fa; com 7ue se=am mostrados todos os critrios 7ue ten"am elo menos uma condi3o verdadeira, n3o im ortando o resultado das outras( -or e'em lo, iremos inverter agora, 7ueremos 7ue se=am mostrados a enas os 7ue ten"am menos de $% e mais de 4%( Com o o erador E n3o seria ossHvel, ois n3o tem como um valor ser menor7ue $% e maior 7ue 4% ao mesmo tem o( -ara isso, usaremos o o erador OU, e a configura3o seria a seguinte:

ig!ra 39 " -.em/lo $e )iltro %om o/era$or 1U

39

E o resultado seria o seguinte:

ig!ra 40 " Res!lta$o $a )iltragem !san$o o/era$or 1U Caso voc* n3o 7ueira mais utili;ar AutoGiltros, s< remov*6los, clicando novamente em Cados W Giltrar W AutoGiltro 7ue ele desa arecer8(

40

9+9 C&A

#F#CAR DADO

Esta o 3o est8 locali;ada no menu Cados e serve ara fa;er a classifica3o de valores, em ordem crescente ou decrescente, seguindo um ou mais critrios( -ara mel"or com reens3o, vamos usar a figura abai'o, 7ue 7uase igual D figura do item anterior, orm com a enas uma coluna a mais:

ig!ra 41 " &abela $e e.em/lo /ara re%!rso 4lassi)i%ar ?a$os A tabela acima contm os seguintes cam os: Nome, @dade, Ae'o e Cidade( Au on"amos 7ue recisemos classificar os clientes em ordem alfabtica or nome( -ara isso, temos 7ue selecionar toda a tabela 0e n3o a enas a coluna dos nomes, sen3o ir8 classificar a enas essa coluna e os dados ficar3o misturados2( A <s isso, iremos em Dados K ClassiIicar, e a arecer8 ent3o a seguinte cai'a de di8logo:

41

ig!ra 42 " 4ai.a $e $i'logo 4lassi)i%ar ?a$os -or en7uanto, utili;aremos a enas a rimeira arte, 7ue o item Classificar or( Como 7ueremos classificar or nome, n3o recisa alterar nada ali or en7uanto( A ordem ode ser crescente, 7ue de A at h 0ou do menor ara o maior, no caso de n.meros2, ou decrescente, 7ue de h at A 0ou do maior ara o menor2( )amos colocar decrescente e dar OK( A tabela ficar8 assim:

ig!ra 43 " &abela $e/ois $e %lassi)i%a$a O rimeiro item a ser classificado n3o recisa ser necessariamente o da rimeira coluna( No nosso caso, oderia or e'em lo ter sido classificado rimeiro or idade, ao invs de nome( Neste caso, terHamos os mais vel"os decrescente2( rimeiro, at c"egar nos mais novos 0caso fosse selecionado

42 Na classifica3o feita acima, foi usado a enas o rimeiro critrio de classifica3o or n3o "aver nen"um dado re etido 0todos os nomes eram diferentes2( ?as e se tivssemos valores iguais, como o Calc saberia 7ual classificar rimeiroc -ara isso e'iste a o 3o em seguida or, de reenc"imento o cional, 7ue fa; com 7ue, caso o rimeiro valor se re ita, ele fa; a verifica3o atravs deste segundo elemento, ara definir 7ual vir8 em seguida( -or e'em lo, se classificarmos rimeiramente or cidade, veremos 7ue A3o -aulo a arece duas ve;es, sendo uma ara G8bio e outra ara -edro( )amos agora classificar or Cidade crescente e or Nome Cecrescente( @sso far8 com 7ue o registro de -edro a area rimeiro 7ue o de G8bio, ois como a cidade fem atoug, o fcritrio de desem ateg o nome( Como selecionamos decrescente, o -edro vir8 rimeiro 7ue o G8bio, e vice6versa( )e=a:

ig!ra 44 " -.em/lo $e %lassi)i%a*+o !san$o $ois %rit@rios Caso se=a necess8rio, ossHvel ainda efetuar um terceiro critrio de classifica3o, 7ue funcionaria da mesma maneira( -or e'em lo, se o segundo critrio de classifica3o fosse o se'o, -edro e G8bio teriam fem atadog novamente, sendo necess8rio um terceiro critrio, 7ue oderia neste caso ser tanto nome 7uanto idade, crescente ou decrescente( -ara isso, bastaria configurar o segundo fEm seguida org(

43

9+B VA&#DA(0O
Este recurso est8 resente no menu Cados, e serve ara limitar os valores 7ue odem ser usados em determinada clula( -or adr3o, as clulas aceitam 7ual7uer ti o de valor 0n.meros, te'to, orcentagem, data, etc(2( No entanto, e'istem alguns casos 7ue necessitam, ou elo menos seria mais .til, 7ue fossem delimitados certos ti os de valores, ara evitar 7ue se=am reenc"idos valores 7ue n3o cabem em determinada clula( -ara acessar o recurso de )alida3o de Cados, rimeiramente selecione as clulas 7ue ser3o afetadas( Ce ois, acesse o menu Cados W )alidade( A arecer8 a seguinte =anela:

ig!ra 45 " 6anela $e :ali$a*+o $e $a$os )e=a um e'em lo: su on"a 7ue voc* trabal"a numa revendedora de veHculos e tem 7ue fa;er a lanil"a de controle de vendas( Cigamos 7ue e'istam tr*s vendedores 0 or e'em lo: -aulo, Ricardo e Io3o2 e cinco carros 0/ol, Go', -alio, Civic e Corsa2( )amos selecionar rimeiramente a coluna dos nomes, as clulas 7ue ser3o utili;adas, de ois acessaremos a =anela de )alida3o, e selecionaremos a o 3o fListag( A <s isso, em fEntradasg, digite os nomes 7ue voc* 7uer 7ue se=am ossHveis utili;ar, um em cada lin"a( -ara assar ara a lin"a seguinte, ressione EN5ER( Caso

44 voc* dese=a 7ue os nomes se=am classificados em ordem alfabtica, mar7ue fClassficar os valores em ordem crescenteg( A lista reenc"ida ficar8 mais ou menos assim:

ig!ra 46 " :ali$an$o %@l!las sele%iona$as Geito isso, cli7ue em fOKg( )oc* voltar8 ara a lanil"a, orm ao selecionar uma das clulas 7ue foram validadas, a arecer8 o sHmbolo , 7ue ao ser ressionado mostrar8 uma cai'a de sele3o contendo os valores 7ue foram digitados na lista( )e=a:

ig!ra 47 " #ista %onten$o os valores vali$a$os

45 @sso 7uer di;er 7ue, no intervalo 7ue foi feita a valida3o, ser8 lista, a arecer8 uma mensagem de erro, similar a esta: ermitido digitar ou

selecionar a enas os valores 7ue est3o na lista( Caso voc* digite um valor diferente dos valores da

ig!ra 48 " 7ensagem $e erro /a$r+o $e vali$a*+o Essa mensagem a mensagem adr3o de erro( No entanto, voc* ode escrever a sua r< ria( -ara isto, selecione novamente as clulas 7ue foram+ser3o validadas e selecione a o 3o de )alida3o de Cados novamente( Em seguida, acesse a aba alerta de erro( A acer8 a seguinte =anela:

ig!ra 49 " 6anela /ara /ersonali(a*+o $a mensagem $e erro5 Na figura acima, =8 foram reenc"idos os valores( Essa =anela contm os seguintes itens: A,6o4 7ue ti o de a3o ser8 efetuado elo Calc( -ode ser de tr*s ti os: o Parar: fa; com 7ue o usu8rio ten"a 7ue alterar obrigatoriamente o valor digitado ara um dos valores da lista( A arece a enas o bot3o fOKgZ

46

ig!ra 50 " -.em/lo $a o/*+o 2arar o Aviso: ermite 7ue o usu8rio escol"a entre aceitar o valor 7ue n3o est8 na lista ou n3o( -ossui os botXes fOKg e fCancelarg, 7ue se ressionados, far3o com 7ue o valor 7ue n3o est8 na lista se=a aceito ou n3o, res ectivamenteZ

ig!ra 51 " -.em/lo $a o/*+o 8viso o Informaes: idem ao aviso( 'Jtulo4 o 7ue a arecer8 na barra de tHtulos 0a barra a;ul da mensagem2Z !ensagem de erro4 a mensagem ro riamente dita, informando sobre o erro ocorrido( Outras colunas odem ser validadas tambm, usando tanto a o 3o lista 7uanto outras o Xes( -ara a coluna do veHculo, odemos usar a o 3o lista novamente, incluindo agora os nomes dos veHculos, e no alerta de erro odemos escrever ara selecionar um veHculo da lista( I8 ara a coluna do reo, usaremos a o 3o fN.mero Cecimalg, ois no e'em lo colocaremos 7ue o valor mHnimo Ra&%(%%%( -ara isso, temos 7ue selecionar em fCadosg a o 3o f?aior 7ueg e, em f?Hnimog, digitarmos &%%%% 0sem ontos, vHrgulas etc(, a menos 7ue se 7ueira usar um valor _7uebrado` como mHnimo, or e'em lo, &%4JR,4$2( )e=a e'em lo:

47

ig!ra 52 " 1!tro e.em/lo $e vali$a*+o -ara este caso, colocarHamos o alerta de erro a mensagem _O valor mHnimo aceit8vel Ra&%(%%%,%%` ou algo do ti o( Alm de Lista e n.mero decimal, odem ser validados os seguintes ti os de dados: CataZ doraZ N.mero inteiroZ Com rimento de te'to( 5odos esses, com e'ce3o de lista, odem ser validados com arando valores, usando os seguintes o eradores matem8ticos: @gual aZ ?aior 7ueZ ?enor 7ueZ ?enor ou igual aZ ?aior ou igual aZ Ciferente deZ EntreZ N3o est8 entre(

48 Cada o 3o selecionada dever8 ser reenc"ida com um ti o de valor diferente( -or e'em lo, ao selecionar f?aior ou igual ag, deve6se reenc"er o valor mHnimo( Ao selecionar f?enor 7ueg, dever8 ser reenc"ido o valor m8'imo( Ao selecionar fEntreg, deve6se reenc"er o valor m8'imo e o valor mHnimo ermitidos, e assim or diante(

49

9+< D%F#N#R NO!%


Normalmente, sem re 7ue 7ueremos calcular a soma, mdia ou 7ual7uer outra fun3o 7ue necessite de um intervalo, usamos o nome da fun3o e digitamos o endereo das clulas como arYmetro do intervalo( -or e'em lo, se e'istem valores a serem somados em B$, B4, BJ e BR, a f<rmula 07ue talve; este=a em BF2 ficaria assim: ]AO?A0B$:BR2 N3o "8 nada errado com essa f<rmula( No entanto, esse intervalo 0ou 7ual7uer outro2 ode ser fnomeadog, ara termos facilitar a locali;a3o e+ou com reens3o do mesmo( -ara isto, e'iste o recurso Cefinir Nome, 7ue est8 locali;ado no menu @nserir 0subitem Nomes W Cefinir ou C5RL i G4 no teclado2:

ig!ra 53 " ?e)inir Nomes -ara mel"or com reens3o, vamos utili;ar um e'em lo( )amos voltar novamente ao boletim escolar:

ig!ra 54 " &abela $e a/oio /ara ?e)inir Nomes

50 Ae voc* clicar em G$, ver8 7ue a f<rmula 7ue a arece ]AO?A0B$:E$2, ois este intervalo contm as clulas das notas, 7ue s3o os valores 7ue deveriam ser somados( )amos dei'ar como est8 or en7uanto( Agora vamos selecionar de B$ a E$ e em seguida acessar @nserir W Nomes W Cefinir( Em seguida a arecer8 a =anela da figura R4( Em fNomeg, digite _-ortugues` 0sem as as as e de refer*ncia sem acento2 e cli7ue _OK`( Agora, cli7ue em G$ e edite a f<rmula( A ague o valor entre ar*nteses 0B$:E$2 e substitua or f-ortuguesg 0o nome 7ue foi dado ao intervalo2( A f<rmula dever8 ficar ]AO?A0-ortugues2( -ressione EN5ER( )oc* ver8 7ue o resultado n3o foi modificado 0caso ten"a modificado, reve=a, ois "aver8 algo errado2, mas isso 7ue deve acontecer mesmo( @sso ocorreu or7u* isso foi feito a <s a f<rmula ter sido inserida( 5anto de uma maneira 7uanto de outra, o resultado deve ser o mesmo( @m ortante: ao nomear intervalos, n3o odem ser usados nomes de funXes e'istentes no CALC 0AO?A, ?EC@A, ?AU@?O, etc2, nem nomes de endereos de clulas 0A$, BR, CE, etc2, ois estas alavras s3o alavras reservadas do Calc, e caso udessem ser utili;adas causariam ambiguidade 0o Calc n3o saberia se estarHamos falando da fun3o ou do nome do intervalo2(

51

9+D PRO'%L%R CM&U&A


Este um recurso im ortante, ois evita 7ue se=am feitas alteraXes -roteger Cocumento(((no sub6menu 7ue se abrir8, a arecer3o duas o Xes: PlanilNa: rotege a enas a lanil"a atual, dei'ando as outras livres ara edi3oZ Documento4 rotege todas as lanil"as de uma ve; s<( -ara fins de com reens3o, iremos estudar a enas a rote3o da lanil"a, ois a rote3o do documento funcionar8 da mesma maneira( A <s acessar o menu de -roteger -lanil"a, a arecer8 a seguinte =anela, edindo sen"a ara rote3o: or descuido 0ou

ro ositalmente2 nos valores e+ou f<rmulas das clulas( -ara acessar essa rote3o, v8 em -lanil"a W

ig!ra 55 " 6anela $e $igita*+o $e sen0a /ara /rote*+o $a /lanil0a O uso de sen"a o cionalZ no entanto, caso voc* n3o digite uma sen"a, 7ual7uer essoa oder8 desblo7uear a lanil"a, bastando ara isso a enas acessar o menu de rote3o de lanil"a novamente( Ae for digitada uma sen"a, necess8rio digitar a mesma sen"a, EUA5A?EN5E @/UAL 0diferencia mai.sculas de min.sculas2, no cam o fConfirmarg( @nde endente de cadastro de sen"a ou n3o, cli7ue em fOKg ara ativar a rote3o( En7uanto a lanil"a estiver rotegida, caso algum tente fa;er alguma altera3o nas clulas, a arecer8 a seguinte mensagem:

ig!ra 56 " N+o @ /oss>vel mo$i)i%ar %@l!las /rotegi$as

52 -ara des roteger, acesse Gerramentas W -roteger Cocumento W -lanil"a 0ou Cocumento, de endendo do 7ue voc* selecionou2( Caso voc* ten"a cadastrado sen"a, a mesma ser8 solicitada( Caso contr8rio, o desblo7ueio feito automaticamente( T ossHvel, no entanto, 7ue algumas clulas fi7uem des rotegidas, mesmo com a rote3o de lanil"a ativada( -ara isso, reciso 7ue rimeiramente des roteger essas clulas( )amos ver isso atravs de um e'em lo:

ig!ra 57 " 2lanil0a !tili(a$a /ara e.em/lo $e /rote*+o $e %@l!las Cigamos 7ue, na lanil"a acima, 7ue ser8 utili;ada or outra essoa, 7ueiramos roteg*6la, orm 7ueremos 7ue a essoa ten"a acesso a alterar os nomes 0Coluna A2 e Aal8rios 0Coluna B2, e n3o deve ter acesso a alterar as f<rmulas das Colunas C e C( -ara isso, antes de roteger a lanil"a, temos 7ue selecionar as clulas 7ue ficar3o des rotegidas 0no nosso caso, de A$ at C&42, e em seguida temos 7ue ir no =anela de formata3o das clulas 0menu Gormatar W Clulas((( ou C5RL i & no teclado2, locali;ar a aba f-rote3o de Clulasg:

53

ig!ra 58 " 6anela $e $es/rote*+o $e %@l!las -or adr3o, todas as clulas vem com a o 3o f-rotegidag selecionada( No entanto, essa rote3o s< ativada 7uando rotegemos a lanil"a( -ara ter acesso a alterar valores mesmo com a lanil"a rotegida, temos 7ue desmarcar a o 3o f-rotegidag e clicar em fOKg( -rote=a a lanil"a novamente e voc* ver8 7ue teremos acesso ara alterar livremente de A$ at B&4 0clulas 7ue foram des rotegidas2, orm o restante continuar8 blo7ueado( Caso tentemos alterar a clula CE, or e'em lo, a arecer8 a mensagem da figura RF( )oc* deve estar se erguntando: e a o 3o fOcultar G<rmulagc Ela tambm s< funciona 7uando a lanil"a est8 rotegida, e serve ara ocultar a f<rmula das clulas selecionadas na barra de f<rmulas( )e=a e'em lo:

ig!ra 59 " -.em/lo $e )=rm!la a/are%en$oA mesmo a %@l!la estan$o blo<!ea$a

54 )e=a na figura acima a arte circulada em vermel"o( Esta a barra de ferramentas, e 7ual7uer clula 7ue ten"a f<rmulas, a mesma ser8 mostrada ali( -ara evitar 7ue isso ocorra, selecione as clulas 7ue voc* dese=a ocultar a f<rmula 0no nosso caso, de C$ at C&42, v8 novamente no menu Gormatar Clulas 0figura RP2 e mar7ue a o 3o fOcultar G<rmulasg( Cli7ue fOKg e rote=a a lanil"a novamente( O resultado ser8 o seguinte:

ig!ra 60 " =rm!la 1%!lta Re are novamente na barra de f<rmulas( ?esmo contendo valor em CR, a f<rmula n3o e'ibida, en7uanto a lanil"a estiver rotegida( T como se a clula estivesse em branco(

55

B+ A

# '%N'% D% DADO

B+* 'AB%&A D#NO!#CA


5ambm con"ecido como Assistente de Cados, a 5abela CinYmica um recurso do Calc 7ue ermite combinar e analisar dados de forma sim les e r8 ida( -ode ser usado ara criar uma es cie de resumo de um con=unto de dados, a fim de dar uma vis3o geral sobre a re resentatividade desses dados( O Assistente de Cados criado a artir de uma tabela normal, como a a resentada abai'o:

ig!ra 61 " &abela $e e.em/lo /ara 8ssistente $e ?a$os Ce ois de a tabela estar ronta, cli7ue em 7ual7uer lugar dentro dela, selecione Dados K Assistente de Dados K #niciar+++ a arecer8 a =anela abai'o, 7ue 7uestiona 7ual a fonte de dados ser8 utili;ada:

ig!ra 62 " ,ele%ionan$o a origem $os $a$os

56 Note 7ue, ao clicar em 7ual7uer lugar dentro da tabela, 7uando acionamos o Assistente de Cados a tabela selecionada automaticamente( Como 7ueremos utili;ar os dados da tabela, dei'amos marcada a o 3o fAele3o Atualg e clicamos fOKg( A <s clicarmos em fOKg, a arecer8 a =anela abai'o, 7ue serve ara definirmos o la!out da tabela dinYmica, ou se=a, em 7ue osi3o cada valor ficar8:

ig!ra 63 " #aBo!t $o 8ssistente $e $a$os Cada tHtulo de coluna re resentado or um bot3o, 7ue ode ser arrastado ara 7ual7uer uma das osiXes D es7uerda 0retYngulos brancos2, sendo 7ue cada um re resenta os dados de uma forma diferente( Na figura acima, os botXes =8 foram arrastados ara dentro de seus res ectivos cam os dese=ados 0Coluna, Lin"a e Cados2, e o resultado 0 ara este e'em lo2 fica assim:

57

ig!ra 64 " Res!lta$o $o assistente $e $a$os No e'em lo acima, o cam o Gilial foi colocado em fCam os de Colunag, e ficou na rimeira coluna( O cam o Categoria foi colocado em fCam os de Lin"ag, e seus valores ficaram em uma lin"a( I8 os valores em si foram colocados em fCam os de Cadosg e ficaram na arte dos dados, fa;endo interse3o entre as res ectivas lin"as e colunas( Os 7ue n3o e'istem na tabela ficaram em branco( -or e'em lo, n3o consta nen"uma consultoria ara Curitiba na tabela, or isso a mesma ficou em branco( Alm disso, a tabela mostra o total, tanto de cada lin"a 7uanto de cada coluna( Caso o usu8rio dese=e, ode rearran=ar os dados de outra maneira, de acordo com a sua necessidade( -ara isto, basta clicar em cima da tabela dinYmica com o bot3o direito e em seguida selecionar a o 3o f@niciarg( A mesma =anela de antes ser8 mostrada( A <s isto, basta arrastar o cam o dese=ado ara a osi3o dese=ada( )e=a abai'o outro e'em lo de tabela dinYmica, utili;ando os mesmos dados, tendo a enas sido rearran=ados:

58

ig!ra 65 " 1!tro e.em/lo $e tabela $inCmi%a As alteraXes 7ue foram feitas foram a enas inverter a osi3o de Categoria e Gilial, de fCam os de Colunag ara fCam os de Lin"ag e vice6versa( T ossHvel tambm inserir algum dos itens no cam o fCam os de -8ginag, o 7ue far8 com 7ue a area uma lista ara selecionar uma das o Xes( )e=a e'em lo:

59

ig!ra 66 " 7ais !m e.em/lo $e tabela $inCmi%a O 7ue foi feita ara 7ue a tabela ficasse dessa maneira foi mover o cam o Gilial ara fCam os de -8ginag( @sso fa; com 7ue a area uma lista de sele3o, 7ue contm o valor f5odasg e os valores da coluna em 7uest3o( No e'em lo da figura acima, foi selecionada uma das filiais, e com isso est3o sendo mostrados a enas os valores referentes D mesma( )oc* deve ter re arado 7ue, no final de cada lin"a e coluna, e'iste o total( Esse total calculado sobre a lin"a ou coluna corres ondente, e or adr3o calcula a soma dos valores( No entanto, ossHvel utili;ar outras funXes, como mdia, m8'imo, mHnimo, alm de funXes estatHsticas, como desvio adr3o( -ara trocar a fun3o da tabela dinYmica, v8 at a tela de la!out( Em fCam os de Cadosg, e'iste um bot3o escrito fAoma W )alorg( Cli7ue com o bot3o es7uerdo sobre ele( Ao fa;er isso, o bot3o fO Xesg D direita ficar8 dis onHvel( Cli7ue neste bot3o( A arecer8 a seguinte =anela:

60

ig!ra 67 " 6anela /ara sele*+o $a )!n*+o $o 4am/o $e ?a$os -ara mudar a fun3o, basta a enas selecionar a 7ue voc* dese=a e clicar em fOKg( Em seguida, cli7ue fOKg novamente e a tabela =8 ser8 atuali;ada( -ara nosso e'em lo, iremos utili;ar a fun3o fContagemg( A tabela dinYmica ficar8 mais ou menos dessa maneira:

ig!ra 68 " 8lteran$o a )!n*+o $a tabela $inCmi%a O n.mero & a arece em 7uase todas as clulas no e'em lo acima or7u* e'iste a enas um item de cada categoria( Caso e'istissem mais do mesmo item, os valores seriam diferentes( @sso ocorreu devido ao fato de a tabela ser e7uena, e estar servindo a enas ara demonstra3o( Em tabelas grandes, com certe;a esses valores seriam maiores 0talve; n3o todos, mas a grande maioria2(

61 )oc* deve ter re arado 7ue algumas clulas ficaram em branco( @sso ocorre or7u* este item n3o a areceu nen"uma ve; na tabela( -ortanto, clula em branco e7uivale ao valor ;ero( No entanto, n3o adianta 7uerer reenc"er as clulas em branco com este valor, ou alterar 7ual7uer clula de dentro da tabela dinYmica, ois as mesmas est3o rotegidas, ou se=a, n3o ermitido a inser3o, altera3o e+ou retirada de valores dentro da mesma manualmente( A .nica maneira seria alterando valores no la!out da tabela dinYmica ou alterando valores na tabela original( Caso voc* tente inserir valores manualmente dentro da tabela dinYmica, a arecer8 a seguinte mensagem:

ig!ra 69 " 7ensagem in)orman$o <!e n+o @ /oss>vel alterar $a$os na tabela $inCmi%a Galando em alterar valores na tabela original, voc* ode fa;*6lo sem roblemas( No entanto, a tabela dinYmica n3o atuali;ada automaticamente( )e=a a figura abai'o, onde foi alterado o valor da categoria f?anuten3og na filial f-orto Alegreg, de Ra&(E%%,%% destacadas2: ara Ra$(R%%,%% 0clulas

62

ig!ra 70 " -.em/lo mostran$o <!e a tabela $inCmi%a n+o @ at!ali(a$a a!tomati%amente Como voc* ode re arar, a clula CR contm Ra$(R%%,%%, en7uanto 7ue a sua clula

corres ondente na tabela dinYmica, C$&, continua com valor Ra&(E%%,%%( -ara 7ue a mesma se=a atuali;ada, necess8rio clicar com o bot3o direito em cima da tabela dinYmica e selecionar a o 3o fAtuali;arg, conforme figura abai'o:

ig!ra 71 " 1/*+o <!e at!ali(a a tabela $inCmi%a A <s selecionar a o 3o de atuali;ar tabela, a mesma ficar8 atuali;ada:

63

ig!ra 72 " &abela $inCmi%a at!ali(a$a As clulas alteradas foram destacadas ara uma mel"or visuali;a3o( @sso foi feito

manualmente, ou se=a, o Calc n3o destaca automaticamente as clulas 7ue s3o alteradas( Alm de todos os recursos vistos acima, ossHvel tambm a licar filtragem D nossa tabela dinYmica, da mesma maneira 7ue feito com uma tabela sim les 0 ara mais informaXes, ve=a item $(& W AutoGiltro nesta a ostila2( @sso ode ser feito de duas maneiras: a rimeira clicando no bot3o fGiltrog 7ue est8 no inHcio da tabela dinYmica, e a segunda e clicando com o bot3o direito dentro da tabela, e em seguida na o 3o fGiltrog( Aer8 mostrada a mesma =anela 7ue a arece no AutoGiltro, o 3o fGiltro -adr3og:

ig!ra 73 " 6anela $e )iltragem /ara tabelas $inCmi%as Cigamos 7ue 7ueiramos 7ue se=am mostradas a enas as lin"as cu=os valores se=am inferiores a Ra&%(%%%,%%( -ara isto, configuraremos o filtro da seguinte maneira:

64

ig!ra 74 " -.em/lo $e %on)ig!ra*+o $e )iltro /ara &abela ?inCmi%a Note 7ue a configura3o e'atamente igual ao AutoGiltro( Ae 7uisssemos utili;ar mais de uma condi3o, bastaria a enas utili;ar os o eradores E ou OU, es ecificar a segunda e+ou terceira condiXes( -ara o e'em lo da figura acima, o resultado ser8 o seguinte:

ig!ra 75 " Res!lta$o $e )iltragem na tabela $inCmi%a -ara 7uestXes de filtragem, n3o s3o considerados os totais, ois os mesmos n3o s3o valores _originais` na tabela( A3o considerados a enas os valores em si( Caso os valores da tabela original se=am alterados, os valores da filtragem odem ser alterados, odendo ser incluHdos ou retirados( )e=amos um e'em lo de cada caso( -rimeiramente, iremos alterar o valor da manuten3o em -orto Alegre 0clula CR2 ara Ra&&(%%%,%%, ou se=a, o

65 critrio ara esta clula assar8 a ser falso, ois n3o atender8 mais ao critrio( A <s a atuali;a3o, a tabela dinYmica com o filtro ficar8 assim:

ig!ra 76 " -.em/lo $e at!ali(a*+o $a )iltragem %om at!ali(a*+o $os valores Com are a figura acima com a anterior( )oc* ver8 7ue a coluna da filial -orto Alegre foi _e'cluHda`, ois o valor n3o est8 mais atendendo ao critrio( Os totais tambm s3o atuali;ados, ois eles se referem a enas Ds lin"as e colunas 7ue est3o sendo mostradas na tabela no momento( Agora iremos fa;er o contr8rio, ou se=a, _incluir` um valor na tabela( -ara isso, iremos alterar o valor da categoria fdard1areg na filial Rio de Ianeiro 0clula CP2 ara RaS($%%,%%( )e=a o 7ue aconteceu de ois de atuali;armos:

66

ig!ra 77 " 1!tro e.em/lo $e at!ali(a*+o $a )iltragem %om at!ali(a*+o $os valores Aem re 7ue atuali;amos, todos os valores 7ue foram alterados s3o atuali;ados, =untamente com a tabela em si, se for o caso, e os totais, inde endente da altera3o 7ue feita( Como voc* ode erceber, a tabela dinYmica totalmente ersonali;8vel( Com ela, ossHvel visuali;ar valores or lin"as, colunas, filtros, listas, etc( T um recurso bastante .til em certos casos( Ae voc* souber us86lo corretamente, ode economi;ar muito tem o em suas tarefas(

67

B+9 CR#ANDO LR"F#CO A PAR'#R D% U!A 'AB%&A D#NO!#CA


Alm dos recursos mostrados acima, o Calc ermite 7ue se=am criados gr8ficos a artir da tabela dinYmica( -ara inserir, cli7ue em #nserir K LrPIico ou no sHmbolo ferramentas -adr3o( A <s isso ser feito, a arecer8 a seguinte =anela: na barra de

ig!ra 78 " 8ssistente $e gr')i%o " -s%ol0a $o ti/o $e gr')i%o Escol"a uma das o Xes dis onHveis 0Barra, Coluna, -i;;a, etc2 e o subti o, D direita( Um gr8fico a arecer8 logo abai'o da =anela acima, mostrando como o gr8fico est8 ficando at o momento( -ara cada altera3o de ti o, subti o ou 7ual7uer outra, o gr8fico atuali;ado automaticamente( -ara nosso e'em lo, utili;aremos o ti o Coluna( Cli7ue em -r<'imo( A =anela seguinte a da escol"a do intervalo de dados:

68

ig!ra 79 " -s%ol0a $o intervalo $e $a$os Nesta =anela ser8 necess8rio fa;er alteraXes no intervalo, elo menos ara este e'em lo, ois da maneira 7ue est8, o intervalo selecionado 0A&S:G$42 est8 englobando as colunas dos totais, o 7ue fa; com 7ue as mesmas a aream no gr8fico( Como o total re resenta a soma de todos os valores da7uela lin"a+coluna, a barra referente a ele ficar8 gigante, distorcendo o gr8fico( Buando o total a arece, como se =unt8ssemos todas as outras barras numa s<, uma em cima da outra( -ara alterar o intervalo, cli7ue no bot3o e selecione as clulas dese=adas( -ara o gr8fico

ficar _ erfeito`, deve6se selecionar as clulas em amarelo da figura abai'o:

ig!ra 80 " Dntervalo <!e $eve ser sele%iona$o (em amarelo)

69 Este intervalo corres onde a A&P:E$$( A <s a sele3o, cli7ue no bot3o novamente,

ara 7ue a =anela volte ao normal( Geito isso confira se em f@ntervalo de dadosg est8 reenc"ido QPlanilNa*+QAQ*R4Q%Q99+ O valor -lanil"a& ode variar, ois o nome da lanil"a onde est8 a tabela, e se a lanil"a tiver outro nome, ser8 este nome 7ue a arecer8 ali( Ae o valor inicial 0aAa&P2 ou final 0aEa$$2 estiver diferente, voc* ode alter86lo manualmente( -ara isso, cli7ue na cai'a de te'to 7ue contm o intervalo, a ague o valor incorreto e reenc"a com o correto( Nesta =anela e'istem tambm duas o Xes, 7ue s3o: _Arie de dados em lin"as` e _Arie de dados em colunas`( Ambas se referem a 7ue ti o de valores ser3o usados como refer*ncia no gr8fico e na legenda( Caso selecione em lin"as, os valores da lin"a ser3o refer*ncia, e vice6versa( Altere de um ara outro e ve=a a diferena no gr8fico( Escol"a o 7ue mais se ade7uar ao seu caso e cli7ue _-r<'imo`( A terceira =anela do assistente de gr8fico refere6se D ersonali;a3o de cada srie de dados:

ig!ra 81 " 8ssistente $e gr')i%o " /ersonali(a*+o $as s@ries $e $a$os @sso funciona da seguinte maneira: caso uma das lin"as ou colunas 0de endendo da maneira como foi configurado na =anela anterior2 conten"a um item 7ue deve ficar de fora, ou este=a em branco, ele ode ser retirado da lanil"a( Neste e'em lo, iremos a enas trabal"ar com a srie fConsultoriag, 7ue =8 est8 selecionada na imagem( -ara alterar o intervalo, cli7ue no bot3o em

f@ntervalo ara )alores de jg( O intervalo atual B&E:E&E( Como e'istem tr*s clulas em branco neste intervalo, odemos usar a enas o E&E( Aelecione esta clula e cli7ue no bot3o selecionado a enas o B&E selecionadas, o rocedimento seria o mesmo( ( Gicar8

ara este intervalo( Caso e'istissem outras categorias a serem

70 Alm disso, ossHvel alterar a ordem 7ue as categorias a arecem no gr8fico( -ara isso, selecione a categoria 7ue voc* dese=a e cli7ue nos botXes bai'o, res ectivamente( As mesmas adicionadas, clicando em fAdicionarg( A <s ter configurado todos os itens, cli7ue em f-r<'imog( Aer8 e'ibida em seguida a seguinte =anela: ou ara ir ara cima ou ara

odem ser Removidas 0clicando no bot3o fRemoverg2 ou

ig!ra 82 " 8ssistente $e gr')i%o " -s%ol0en$o t>t!los e legen$as Esta =anela contm os seguintes itens 0todos s3o o cionais2: 'Jtulo4 define um tHtulo ara o gr8fico( Gica no to o e com letras grandesZ ubtJtulo4 fica um ouco abai'o do tHtulo e com letras menoresZ %iSo T4 um r<tulo 7ue define o nome do ei'o inferior do gr8fico 0"ori;ontal2Z %iSo U4 define o nome do ei'o D es7uerda do gr8fico 0vertical2( %Sibir Lrades4 e'ibe lin"as na 8rea do gr8fico, tanto na vertical 0Ei'o U2 7uanto na "ori;ontal 0Ei'o j2( Ce endendo do gr8fico, a o 3o fEi'o hg tambm "abilitadaZ &egenda4 define a osi3o do gr8fico em 7ue a legenda ficar8( -ara 7ue a mesma se=a mostrada, necess8rio 7ue a o 3o fE'ibir Legenda este=a selecionadag( A osi3o adr3o fCireitag( A figura abai'o mostra um e'em lo de reenc"imento dos cam os:

71

ig!ra 83 " 8ssistente $e gr')i%o E e.em/lo $e /reen%0imento $os -lementos $o gr')i%o A <s configurar, cli7ue em fConcluirg, lembrando 7ue se ode tambm voltar Ds telas anteriores, clicando em f)oltarg ou desistir de criar o gr8fico, clicando em fCancelarg( A <s toda a configura3o, o gr8fico ficar8 assim:

ig!ra 84 " Fr')i%o $e/ois $e /ronto

72 A <s estar ronto, o gr8fico totalmente configur8vel, tanto taman"o 7uanto cor, ti o, etc( -ara comear, vamos alterar o taman"o do gr8fico( -ara isso, cli7ue com o bot3o es7uerdo do mouse acima do gr8fico( A arecer3o 7uadradin"os retos em cada canto da figura 0 2( -asse o 2(

mouse sobre algum deles e o onteiro do mouse mudar8 ara duas setas em lados o ostos 0

Cli7ue com o mouse, segure e arraste ara cima ou ara bai'o, de endendo se voc* dese=a aumentar ou diminuir( Uma lin"a ontil"ada indica o novo taman"o( Buando estiver satisfeito, a enas solte o mouse( -ara mover sem mudar o taman"o, cli7ue no meio da figura e segure( O onteiro do mouse mudar8 ara ( Com o mouse segurado, mova at a osi3o dese=ada, de ois solte(

-ara alterar o ti o de gr8fico, cli7ue com o bot3o direito em cima do gr8fico em cli7ue em f5i o de gr8ficog( Em seguida abrir8 a seguinte =anela, ara escol"a do gr8fico:

ig!ra 85 " 6anela $e es%ol0a $e ti/o $e gr')i%o Nesta =anela, basta alterar o ti o e+ou subti o ara o novo gr8fico( O gr8fico da lanil"a atuali;ado automaticamente( Caso dese=e, voc* ode tambm alterar ara 4C, como est8 selecionado na figura abai'o( A <s configurar, cli7ue em fOKg( Caso dese=e alterar a cor de fundo, cli7ue com o bot3o direito e selecione f-ro riedades do ob=etog( Na =anela 7ue a arece, selecione a aba f-reenc"imentog:

73

ig!ra 86 " 4on)ig!ra*+o $o /reen%0imento $o gr')i%o A o 3o de reenc"imento ode ser feita em tr*s lugares: Legenda, -arede do gr8fico e Nrea do gr8fico( -ara alterar, necess8rio clicar com o bot3o direito na 8rea 7ue dese=a selecionar( Na mesma =anela, odem ser alteradas as cores da borda, bastando ara isso selecionar a aba borda( -ara finali;ar este ca Htulo, ve=a abai'o um gr8fico de ois de formatado:

ig!ra 87 " -.em/lo $e gr')i%o )ormata$o

74

<+ !ACRO
Uma macro uma se7u*ncia de comandos e funXes arma;enadas em um m<dulo do LibreOffice Basic e ode ser e'ecutada sem re 7ue voc* recisar e'ecutar a tarefa( Caso e'ecute uma tarefa v8rias ve;es no Calc, voc* ode automati;86la com uma macro( Antes de e'ecutar uma macro, necess8rio, _grav86la`, ou se=a, entrar no modo de grava3o da macro, e'ecutar a0s2 tarefa0s2 dese=ada0s2 e salvar( -ara isso, acesse Ferramentas K !acro K Lravar !acro+ A <s isso, a arecer8 na lanil"a a seguinte =anela:

ig!ra 88 " 6anela $e grava*+o $e ma%ro En7uanto essa =anela estiver aberta, tudo o 7ue voc* fi;er ser8 _gravadog, ou se=a, ser8 feito assim 7ue voc* e'ecutar( -ara arar, cli7ue em _-arar grava3o`( )amos a um e'em lo( @magine a tabela abai'o:

ig!ra 89 " &abela /ara e.em/lo $e !tili(a*+o $e ma%ros )amos formatar a coluna A, ondo uma cor de fundo na mesma, mais ou menos assim:

75

ig!ra 90 " -.em/lo $e %on)ig!ra*+o $e ma%ros Em seguida, cli7ue em _-arar grava3o`( A arecer8 a =anela ara dar nome D macro:

ig!ra 91 " 6anela /ara salvar a ma%ro Escol"a um nome ara a macro e cli7ue em _Aalvar`( -ara este e'em lo, ser8 usado o nome 7ue a arece na imagem 0formatacao sem acento2 A macro ficar8 salva na lista de macros e oder8 ser acessada clicando6se em Ferramentas K !acros K %Secutar !acro 0lembre6se antes de selecionar as clulas 7ue dese=a 7ue a macro se=a e'ecutada24

76

ig!ra 92 " 6anela $e sele*+o $e ma%ros A <s selecionar a macro dese=ada, cli7ue em _E'ecutar`( A macro ser8 e'ecutada e'atamente igual ao 7ue foi _gravado`( -ara este e'em lo, foi selecionada a coluna B antes de e'ecutar a macro( O resultado final foi o seguinte:

ig!ra 93 " 7a%ro a/=s e.e%!ta$a Buando foi gravada, a macro formatacao contin"a formata3o de clulas, na cor a;ul( 5oda ve; 7ue a mesma for e'ecutada, a artir de agora, ser8 e'atamente isso 7ue ela ir8 fa;er, nas clulas selecionadas( -or isso a coluna B ficou com a formata3o igual D coluna A(

77 Note 7ue todas as macros criadas elo usu8rio est3o locali;adas em f?in"as macrosg( -ara a agar 7ual7uer uma delas, selecione Ferramentas K !acros K Organi/ar !acros K &ibreOIIice Basic+ Aelecione a macro dese=ada e cli7ue em E'cluir:

ig!ra 94 " -.%l!in$o 7a%ros No e'em lo acima, criamos uma macro onde foi alterada a enas a formata3o do te'to( No entanto, odem ser criadas macros 7ue efetuam c8lculos tambm( )e=amos outro e'em lo:

ig!ra 95 " &abela /ara !tili(a*+o $e novo e.em/lo $e ma%ro Considere a tabela acima( )amos criar agora a artir desta tabela uma macro 7ue

multi li7ue todos os n.meros or 4( -rimeiramente, devemos iniciar a grava3o da macro, clicando em Ferramentas K !acros K Lravar !acro+ Em seguida, vamos selecionar a clula A4, 7ue contm o valor 4( Co ie este valor ara a 8rea de transfer*ncia 0C5RL i C ou %ditar K Co7iar2( Geito isso, devemos selecionar todo o intervalo 0A&:C42 ou as clulas 7ue devem ser multi licadas e em seguida clicar em %ditar K Colar %s7ecial+ Aer8 mostrada a seguinte =anela:

78

ig!ra 96 " 6anela 4olar -s/e%ial Nesta =anela deve ser selecionada a o 3o f?ulti licarg em fO eraXesg, como na figura( Em seguida, cli7ue _OK`( A tabela ficar8 assim:

ig!ra 97 " &abela a/=s !tili(a*+o $a ma%ro Em seguida, cli7ue em _-arar /rava3o`( A arecer8 a =anela ara escol"er o nome( -ara nosso e'em lo, demos o nome fmulti licag ara a macro( Cli7ue em _Aalvar`( A macro =8 est8 salva( -ara test86la, selecione algumas clulas da tabela atual ou digite novos valores( Em seguida v8 em Ferramentas K !acro K %Secutar !acro+ Locali;e a macro dese=ada e cli7ue em _E'ecutar`( Como vimos at agora, as macros s3o utili;adas sem re 7ue uma tarefa re etitiva deve ser e'ecutada( Ela ode ser gravada, 7ue foi o 7ue fi;emos agora, ode ser rogramada ou ambos( )eremos como rogramar uma macro e funXes no r<'imo item(

79

<+* K PROLRA!ANDO !ACRO % FUN()%


5oda ve; 7ue uma macro gravada no LibreOffice Calc, gerado tambm um c<digo referente D mesma( Esse c<digo criado na linguagem Basic, e gerado automaticamente assim 7ue a macro criada, com os comandos referentes ao 7ue foi gravado na macro( O acote LibreOffice ossui um editor de linguagem Basic, c"amado LibreOffice Basic, e ode ser acessado elo camin"o Formatar K !acros K Organi/ar !acros K &ibreOIIice Basic+ Locali;e a macro dese=ada e cli7ue em _Editar`( Aer8 mostrada ent3o a =anela do LibreOffice Basic, e ser8 mostrado na tela o c<digo referente D macro selecionada( Na figura abai'o, est8 o c<digo referente D macro multiplica:

ig!ra 98 " 6anela $e e$i*+o $o #ibre1))i%e Basi% N3o foi ossHvel mostrar todo o c<digo gerado na imagem acimaZ ortanto, o mesmo est8 sendo re rodu;ido abai'o: sub multi lica rem 6666666666666666666666666666666666666666666666666666666666666666666666 rem define variables dim document as ob=ect dim dis atc"er as ob=ect rem 6666666666666666666666666666666666666666666666666666666666666666666666

80 rem get access to t"e document document ] 5"isCom onent(CurrentController(Grame dis atc"er ] createUnoAervice0kcom(sun(star(frame(Cis atc"del erk2 rem 6666666666666666666666666666666666666666666666666666666666666666666666 dis atc"er(e'ecuteCis atc"0document, k(uno:Co !k, kk, %, Arra!022 rem 6666666666666666666666666666666666666666666666666666666666666666666666 dim args$0%2 as ne1 com(sun(star(beans(-ro ert!)alue args$0%2(Name ] k5o-ointk args$0%2()alue ] kaAa&:aCa4k dis atc"er(e'ecuteCis atc"0document, k(uno:/o5oCellk, kk, %, args$022 rem 6666666666666666666666666666666666666666666666666666666666666666666666 rem dis atc"er(e'ecuteCis atc"0document, k(uno:-asteA ecialk, kk, %, Arra!022 rem 6666666666666666666666666666666666666666666666666666666666666666666666 dim argsJ0R2 as ne1 com(sun(star(beans(-ro ert!)alue argsJ0%2(Name ] kGlagsk argsJ0%2()alue ] kAk argsJ0&2(Name ] kGormulaCommandk argsJ0&2()alue ] 4 argsJ0$2(Name ] kA:i Em t!Cellsk argsJ0$2()alue ] false argsJ042(Name ] k5rans osek argsJ042()alue ] false argsJ0J2(Name ] kAsLin:k argsJ0J2()alue ] false argsJ0R2(Name ] k?ove?odek argsJ0R2()alue ] J dis atc"er(e'ecuteCis atc"0document, k(uno:@nsertContentsk, kk, %, argsJ022 end sub

81

5odo esse c<digo foi gerado ara efetuar o c8lculo da multi lica3o dos valores das clulas( Ele gerado automaticamente 7uando a clula gravada( -ode arecer com licado a rincH io, orm com um ouco de estudo, ficar8 mais com reensHvel( T interessante tambm estudar um ouco de l<gica de rograma3o, ara termos noXes do b8sico, rinci almente sobre vari8veis( Os com onentes b8sicos de toda macro criada no BAA@C s3o: ub SSSS4 esta lin"a indica o inHcio do c<digo da macro, sendo 7ue o '''' substituHdo elo nome da mesma( No final de todo o c<digo, ela deve ser _fec"ada`, digitando6se end subF Dim4 este comando serve ara declarar as vari8veis 7ue ser3o utili;adas( Uma vari8vel um es ao de mem<ria 7ue servir8 ara arma;enar determinado valor 0n.mero inteiro, te'to, n.mero decimal, etc2, 7ue ode ou n3o variar 7uando o c<digo e'ecutado 0 or isso se c"ama vari8vel2Z Rem4 serve ara indicar coment8rios, e devem ser colocados no inHcio da0s2 lin"a0s2 7ue se dese=a usar como coment8rio( Um coment8rio nada mais 7ue observaXes a res eito do 7ue est8 sendo feito na7uela arte do c<digo( @sso .til ara mel"or com reens3o do 7ue est8 sendo feito, tanto or outra essoa 7ue analise o c<digo 7uanto ela r< ria essoa 7ue fe;, ois se o c<digo for muito grande, ela ode n3o se lembrar de tudo o 7ue foi feito( Aendo assim, teria 7ue analisar o c<digo novamente ara recordar o 7ue "avia feito na7uela arte, e assim gastaria mais tem o desnecessariamente( -or isso, os coment8rios s3o altamente recomend8veis, tanto em BAA@C 7uanto em 7ual7uer outra linguagem de rograma3o( N3o ossHvel e' licar a7ui como funciona a rograma3o em BAA@C, ois o conte.do muito e'tenso( Caso dese=e mais informaXes sobre o assunto, acesse "tt :++"el (libreoffice(org+Basic+Basic^del + t Alm das macros, com o BAA@C ossHvel criar funXes ara serem utili;adas no Calc( )eremos como fa;er isso no r<'imo subitem(

82

<+9 G CR#ANDO FUN()% CA&C NO BA #C


Antes de comearmos a ver funXes ro riamente ditas, veremos um ouco de como

criarmos nossas r< rias macros( )amos comear com uma bem sim les, 7ue mostra ao usu8rio uma cai'a de di8logo solicitando o nome do usu8rio( A <s o mesmo reenc"er e clicar em OK, ser8 mostrada uma mensagem de boas vindas ersonali;ada com o nome do usu8rio( -ara comear, abra a =anela de gerenciamento de macros, 7ue est8 em Ferramentas K !acros K Organi/ar !acros K &ibreOIIice Basic+ Em seguida, selecione _Novo`( A arecer8 a =anela de edi3o do Basic( Cigite o c<digo abai'o:

ig!ra 99 " 4=$igo /ara 7a%ro Geito isso, salve as alteraXes e e'ecute a macro( Aer8 mostrada a =anela abai'o, solicitando a digita3o de nome:

ig!ra 100 E 7a%ro em e.e%!*+o E /arte 1 A <s clicar em _OK`, a arecer8 a cai'a de mensagem abai'o, com o nome 7ue foi digitado:

ig!ra 101 " 7a%ro em e.e%!*+o " /arte 2

83

)amos analisar o 7ue cada arte do c<digo fa;: ub euNome4 essa lin"a o _cabeal"o` da macro, onde inicia o c<digo 7ue ser8 e'ecutado( Buando foi clicado em _Novo`, nessa lin"a a arece escrito Sub Macro1, e deve ser substituHdo elo nome de macro dese=adoZ Rem4 as lin"as 7ue comeam com essa alavra s3o a enas coment8rios, 7ue e' licam o 7ue ser8 feito ou 7ual7uer outra observa3o 7ue se=a necess8ria fa;er( N3o s3o consideradas elo Basic na "ora de e'ecutarZ Dim Nome as tring4 Essa lin"a declara a vari8vel Nome, com ti o de dados Atring 0te'to2( Cada vari8vel 7ue for declarada deve ser colocada em uma lin"a se aradaZ Nome ; #n7utBoS1VDigite o seu nome4V8 VPreencNaV34 essa lin"a atribui o valor digitado na cai'a de te'to 0@n utBo'2 D vari8vel Nome( Os valores entre ar*nteses se referem aos valores 7ue ser3o informados ao usu8rio 0ve=a figura &%%2Z !sgBoS 1V eWa bemGvindo1a38 V XNome XVYV8 VBoasGvindasV34 o comando ?sgBo' fa; a arecer a enas uma mensagem, informando o te'to 7ue foi colocado entre ar*nteses 0ve=a figura &%&2( Caso se=a necess8rio inserir valor de vari8veis, usado o sHmbolo l e de ois o nome da vari8velZ %nd ub4 essa indica o fim do c<digo da macro, 7ue foi aberta em Aub AeuNome( Esse a enas um e'em lo de como configurar uma macro via rograma3o no Calc( -ara mais e'em los e informaXes, acesse o site oficial do LibreOffice Basic: "tt :++"el (libreoffice(org+Basic+Basic^del + t ( Agora veremos como criar uma fun3o 7ue ser8 utili;ada no Calc atravs do Basic Alm das macros, 7ue vimos acima, ossHvel criar tambm funXes ara uso r< rio no Calc( A <s ela estar rogramada, ossHvel utili;86la da mesma maneira 7ue se usa as funXes fnativasg do Calc, ou se=a, usando6se o sinal de igual, o nome da fun3o e os arYmetros dese=ados( A diferena 7ue neste caso os arYmetros ser3o definidos or n<s( Antes de comear, vamos fa;er o seguinte: uma lanil"a onde digitaremos uma data e dese=aremos saber em 7ue dia da semana 0 or e'tenso2 esta data caiu( A esar de trabal"ar com funXes de datas, o Calc n3o ossui nen"uma 7ue faa isso diretamente( O 7ue ode6se fa;er utili;ar a fun3o C@A(CA(AE?ANA, 7ue retornar8 um n.mero de % a F ou de & a S, de endendo de como for configurada a fun3o( Usaremos ara este e'em lo a contagem adr3o, 7ue atribui valor & ara domingo, $ ara segunda6feira, 4 ara tera6feira e assim or diante( A lanil"a dever8 ficar mais ou menos assim:

84

ig!ra 102 " -.em/lo $e tabela /ara $emonstra*+o $e )!n*;es A fun3o em B$ ficar8 ]C@A(CA(AE?ANA0A$2, e retornou S or7u* a data em A$ caiu num s8bado, e assim sucessivamente( Geito isto, c"egou a "ora de criar a nossa fun3o( -ara isso, iremos acessar o editor de macros, clicando em Ferramentas K !acros K Organi/ar !acros K &ibreOIIice Basic e de ois vamos clicar em Editar( )amos criar uma fun3o 7ue denominaremos Cia-orE'tenso, e 7ue contm a enas um arYmetro, 7ue ser8 o valor 7ue resultou da fun3o C@A(CA(AE?ANA( 5odos os arYmetros devem ser declarados no cabeal"o da fun3o, ao lado do nome da mesma( O c<digo ara este e'em lo em es ecHfico ficou assim:

ig!ra 103 " -.em/lo $e %=$igo %ria$o /ara !ma )!n*+o /ersonali(a$a

85 O c<digo acima recebe o valor da clula 0Numero2 e o com ara com valores de & a S 0Aelect Case Numero indica 7ue o valor a ser com arado o da vari8vel Numero2( Caso o valor de Numero se=a um valor 7ue n3o este=a entre & e S, retornar8 a mensagem _Cia @nv8lido` 0Case Else2( A <s isso, devemos fec"ar a fun3o com End Gunction( )amos testar agora na lanil"a( )amos colocar o cursor em C$ e digitar ]C@A-OREU5ENAO0B$2( Ce ois odemos co iar a fun3o ara as lin"as seguintes na mesma coluna( O resultado dever8 ficar assim:

ig!ra 104 " -.em/lo $e !tili(a*+o $e )!n*+o %ria$a /elo !s!'rio Uma observa3o im ortante: as funXes ersonali;adas n3o a arecem na lista do assistente de funXes, elo fato de terem sido criadas elo usu8rio( Aomente a arecem nesta lista as funXes fnativasg, ou se=a, a7uelas 7ue foram criadas =unto com o Calc( -ara finali;ar, vamos ver mais um e'em lo de utili;a3o de funXes ersonali;adas no Calc( Au on"amos 7ue voc* dese=a criar uma lanil"a ara o c8lculo do @?C 0Kndice de ?assa Cor <rea, medida utili;ada calcular o eso ideal, e 7ue calculado dividindo6se o eso ela altura ao 7uadrado2( )amos rimeiramente digitar os valores necess8rios na lanil"a:

ig!ra 105 " -.em/lo /ara %ria*+o $e )!n*+o /ara %'l%!lo $o D74 A <s isso, iremos ao editor do Basic e digitaremos o c<digo abai'o:

86

ig!ra 106 " -.em/lo $a )!n*+o $o D74 no B8,D4 A fun3o acima uma fun3o bem sim les, sendo 7ue seu c8lculo ocu ou a enas uma lin"a( @sso ocorreu or7u* n3o foi necess8rio escol"er entre v8rios valores como no e'em lo anterior( A enas fe; o c8lculo e retornou o valor deste c8lculo( Lembre6se de salvar as alteraXes feitas no editor do Basic( Uma observa3o im ortante: nos casos em 7ue a fun3o tiver mais de um argumento, como o nosso caso 0 eso e altura2, eles devem ser colocados na ?EA?A ORCE? em 7ue forem usados na fun3o( Geito isso, volte na lanil"a e digite ]@NC@CE?AAAA0b&Zb$2( O resultado ficar8 assim:

ig!ra 107 " !n*+o D74 a/=s /reen%0i$a Caso voc* ten"a colocado rimeiro a altura e de ois o eso, basta inverter a ordem dos endereos do 7ue est8 na fun3o do e'em lo 7ue tambm dar8 certo( E' erimente alterar os valores ara verificar o funcionamento da fun3o( Este ca Htulo foi a enas uma breve introdu3o ao funcionamento das macros e do editor Basic do LibreOffice( N3o ossHvel e' licar tudo, ois o material muito e'tenso e ficaria invi8vel colocar a7ui( No entanto, como =8 mencionei anteriormente, no site oficial do LibreOffice, e'istem muito mais informaXes dis onHveis sobre este assunto( Estamos c"egando ao fim deste livro de LibreOffice Calc Avanado( Es ero 7ue ten"a sido .til e voc* ossa utili;ar os con"ecimentos a7ui ad7uiridos a seu favor( At logomm

87

R%F%RZNC#A B#B&#OLR"F#CA
ROC[A, 5arcH;io da, O enOffice(Org $(% Calc Com leto e Cefinitivo, Editora Ci*ncia ?oderna, Rio de Ianeiro, $%%FZ LON(A&V% 8 Cristiane, Broffice(org: Calc Avanado Com @ntrodu3o Ds ?acros W Editora Ci*ncia ?oderna, Rio de Ianeiro, $%%EZ

Você também pode gostar