Sunteți pe pagina 1din 21

1.

5LUCRULCUBAZEDEDATEEXCEL

Datelecucareselucreazntrofoaiedecalculsuntorganizatederegulsub
formtabelar.Dactabelulareoanumitstructurianume,liniilenuauetichete,iar
coloaneleaucteunnume(etichet)distinct,atuncispunemctabelulrespectivesteo
list.Listaesteuntabelcepoatefiprivitcaobazdedate.naceastaaccepiunetabelul
dinfig.1.97esteolist.

Fig.1.97Bazadedate
Tabeluldemaisusestedesigurnprimulrnduntabelbidimensional,mpritn
celulececonininformaiidespreangajaiiunuioficiudecalcul.Acesttabelaretoate
proprietileuneifoidecalcul;asupraluisepotefectuatoateprelucrrilepermisentro
foaiedecalcul.Dacdorimnssfacemprelucrrisuplimentare,deexemplucutrii
extragerideinformaiidupanumitecriterii,atuncitabelulvatrebuisaibeformaunei
liste. n acest caz tabelul va fi interpretat ca fiind o baz de date i avnd toate
proprietilecedecurgdinaceastnouipostaz.
PentruExcel,obazadedateesteoplajdecelulecareocupdousaumaimulte
liniiicelpuinocoloan.Creareaiutilizareauneibazededatepermitestocareai
manipulareafacilaunuivolummarededatecomplexe.

Surselededateorganizatesubformdeliste,pecareExcel7.0lepoateprelucra
cabazededate,potfiinternesauexterne.nacestcapitolnevomocupanumaidesursele
dedateinterne,decinumaidelisteelaboratecuajutorulaplicaieiExcel7.0.
Acestelistepotfiprivitedindouunghiuridiferite:fiecafoaiedecalcul,fiecabaz
dedate.Olistprivitcabazdedateareurmtoareleparticulariti:
a) a) liniilereprezintnregistrrialebazeidedateiauostructuruniform;
b) b) coloanelereprezintcmpuriledincaresuntalctuitenregistrrile;
c) c) primaliniedinlistdefinetenumelecmpurilor.Numeleunuicmppoateavea
maximum256decaractere;
d) d) asupraeisepotefectuatoateoperaiilepermisentrobazdedate:adugri,
modificri,tergeri,ordonricresctoaresaudescresctoaredupunulsaumaimulte
cmpuri,cutriiextragerifunctiedeanumitecriterii,imprimridedatestructurate;
e) e) poateocupaontreagfoaiedecalcul:16384deliniipe256decoloane.
LaversiunileanterioareluiEXCEL5.0eranecesarcalistasfiedeclaratexpresca
fiindbazdedate,pentruafirecunoscutcaatare.ncepndcuversiunea5.0,Excel
identificautomatolistcafiindbazdedatenmomentulncareutilizatorulsolicit
efectuareaunoroperaiispecificebazelordedate.Obazdedateesterecunoscutprin
simplapoziionareacursoruluintrocelulalisteiiapelareauneicomenzispecifice
bazelordedate.ComenzilepentrulucrulcubazededateseregsescnmeniulData.

Creareauneibazededate
PentruarealizaabazdedatecuajutorulaplicaieiExcel7.0estenecesarsse
parcurgurmtoriipai:
1. 1. Definireastructuriibazeidedate,desemnareainformaiilorcarevorfiguran
cadrulei.
Acestprimpasestefoarteimportantdeoareceelreprezintconcepereabazeidedatecnd
trebuieavutnvederecelpuinuncriteriudebazianume,spermitregsirearapida
tuturorinformaiilordecareutilizatorularenevoie.
MSExcelaremaimultefacilitiautomatecareuureazgestiuneaianalizadatelor
dintrolist.Pentruabeneficiadinplindeacestefacilititrebuieavutenvederecteva
recomandri:
ntrofoaiedecalculsexisteosingurbazdedate;
bazadedatesfieizolatdecelelaltedatedinfoaieprincelpuinocoloan;

sub baza de date s nu se plaseze alte informaii pentru a nu mpiedica o


eventualextindereabazeidedateprinadaugareadenoinregistrri;

primulrndallisteisconindenumiriledecmpuri.Excelutilizeazaceste
denumiripentruacrearapoarte,aregsiiorganizadate;

formatareaprimuluirndallistei(titlurilecoloanelor)sdiferedeformatarea
celorlalternduri(nregistrrile).
2. 2. Introducereadatelor.Olisttrebuiesfiecompact,adicnregistrriletrebuie
introduse ncepnd cu rndul doi al listei, de ci imediat dup rndul ce conine
titlurilecoloanelor.
Introducerea datelor se poate face direct pe foaia de calcul sau prin utilizarea unui
formular. Indiferent de modalitate, trebuie evitat inserarea de spaii suplimentare la

nceputul unei celule. Acest fenomen are efect negativ n sortarea i cutarea
informaiilor.
3.Formatareadatelor.Pentrudateledincadrulnregistrrilorserecomand:
utilizareaunuiformatdiferitdecelalnumelorcmpurilor(titulurilecoloanelor);
utilizareaaceluiaiformatpentrutoateceluleledintrocoloan.

Actualizareabazeidedate
Prinactualizareabazeidedatenelegemntreinereaacesteia,adicadugarea,
modificareasautergereadenregistrri.Acestlucrusepoaterealizandoumoduri:
directpelistsauutilizndunformular(predefinitsaupersonalizat).
1.Actualizareadirectpelist.
naceastvariantseutilizeazproprietilefoiidecalcul.
a)adugareauneinregistrrisefaceprintastareaconinutuluinoiinregistrarinrndul
ceurmeazultimeinregistrridinlist.ncazulncaresedoreteadugareamaimultor
nregistrriserepetprocedeul;
b) modificarea unei nregistrari presupune poziionarea cursorului pe nregistrarea
respectiv,ncmpuldemodificat.Pentruregsireanregistrriicorespunztoareexist
treiposibiliti:
b1)seutilizeazbaradedefilareafoiidecalcul;
b2)seutilizeazcomandaEditFind(figura1.98),cazncareapareofereastr
de dialog care ne invit s precizm informaia care s permit poziionarea pe
nregistrareadoritsauctmaiaporapedeea.
Deexemplu,dorimsfacemomodificareprivindmajorareasalariuluioperatorilor
(vezifigura1.97)cu100.000lei.Pentruarealizaaceastactualizareasalariului,seva
procedaastfel,conformfiguriiurmtoare:
sealegecomandaEditFind...AparefereastraFind;

se poziioneaz cursorul de mouse n rubrica Find i se tasteaz cuvntul


operator;
seacioneazbutonulFindNext.Vafiselectatprimaapariieatextuluiaferent
funcieideoperator;
sedeplaseazcursorulncmpulcorespunztorsalariuluiinlocde400.000se
vascrienoulsalariu,500.000.

Fig.1.98Cutareanbazadedate

pentrucelelaltenregistrrisevareluaprocedeul
senchidefereastraFindactionndbutonulClose.
b3)sealegecomanda Edit Replace...Apare ofereastrdedialogcareneinvits
precizmvaloareacutatnvedereamodificrii(poziiaFind),precuminouavaloare
(poziia Replace). Presupunnd c doar operatorii au salariul de 400.000 lei, atunci
actualizareasepoaterealizaastfel(conformfigurii1.99):
- - sealegecomandaFindReplace...AparefereastraReplace;
sepoziioneazcursorulncsuaFindisetasteazvaloarea400000;
sepoziioneazcursorulncasetaReplaceisetasteazvaloarea500000;
seacioneazbutonulReplaceAll;

Fig.1.99nlocuireadatelornbazadedate
senchidefereastraReplaceacionndbutonulClose.
c)tergereauneinregistrri.Seprocedeazastfel:

sepoziioneazcursorulpeantetuldeliniecorespunztornregistrriidorite;
efectulvafiselectareantregiilinii.

sealegecomanda Edit; Delete...sauseacioneaztasta<Del>sauconform


figurii1.100seselecteazantetuldeliniecorespunztornregistrriidetersise
acioneaz butonuldreptalmouselui,iardinmeniul contextual astfel generatse
alegecomandaDelete.

Fig.1.100tergereadatelordinbazadedate
2.Utilizndformularul.Pentruafiareaformularuluipredefinitsepoziioneazcursorul
ntrocelulalisteiisealegecomandaDataForm...Vafiafiatfereastraceconine
formularul i pe care o prezentm n continuare (vezi figura 1.101). Fereastra
formularuluidedateconstnprincipaldinurmtoareleelemente:

baradetitlucareconinenumelefoiidecalculncareesteplasatlista,precum
ibutoaneledeHelpidenchidereaferestrei;

Fig.1.101Utilizareaformularuluidedate
etichetele,realizateprinpreluareanumelordecmpuridinbazadedate;

caseteledetext,utilizatepentruintroducerea,afiarea,editarea,sautergerea
datelordincmpurilebazeidedate.Cmpurileaparnformularnordineancare
apar i n foaia de calcul, doar ca sunt plasate vertical. Limea celei mai largi
coloanedeterminlungimeacasetelordetext;

bara de defilare, prevzut cu posibiliti de parcurgere a bazei de date


nregistrarecunregistrare(prinbutoaneleaflatelaextremiti)saurapid,utiliznd
ascensorul;
indicatorulnumruluidenregistrare,carearatattnumrulnregistrriicurente
(afiatenformular),ctinumrultotaldenregistrridinlist;

butoaneledecomand,carepermitgestionareadatelordinbazaprinintermediul
formularului;
ncazulncarelistaconineicmpuricalculate(deex.sporuldevechime) 1[1]
coninutul2[2]acestoravafiafiatinformativ,decinunecesitcasetdetext,ntruct
valoarea respectiv fiind rezultatul unui calcul, nu poate i nu trebuie s poat fi
modificat.

a1) introducerea primei nregistrri presupune c n foaia de calcul a fost deja


precizatstructurabazeidedate,cualtecuvinteaufostdejatastatetitlurilecoloanelor
listei,adicnumelecmpurilorbazeidedate.
Pentruacesta:
1[1]

Pentrucalculareasporuluidevechimeamconsideraturmtorulalgoritm:
pentruovechimesub3ani,nuseacordspor
pentruovechimentre3si5ani,sporulreprezint7%dinsalariu
pentruovechimentre5si10anisporulestede10%dinsalariu
pentruovechimemaimarede10anisporulestede15%dinsalariu
2[2]
Nereferimlainformaiacarereprezintrezultatulcalcululuiinuformuladecalcul

sepoziioneazcursorulnbazadedate;
sealegecomandaDataForm...Apareferestraformularului;

se tasteaz valorile corespunztoare primei nregistrri n casetele de text


respective.Pentrudeplasareadelaocaset(cmp)laaltaseutilizeazatasta<Tab>.
Sfritulintroduceriinregistrriisemarcheaztastnd<Enter>.nregistrareavafi
preluatdinformularnlist,iarcaseteledetextvorfi
golitenvedereaintroduceriiuneinoinregistrri.

a2)adugareauneinregistrrinbazadedatesefaceastfel:
sepoziioneazcursorulnlist;
sealegecomandaDataForm...Aparefereastraformularului
seacioneazbutonulNew.Caseteledetextvorfigolite;
seintroducdatelecorespunztoare.
Dac sedorete adugarea a nc unei nregistrri sevaaciona din noubutonul
New.ncazcontrar,sevaactionabutonulClose.
b) modificarea uneinregistrri.Formularulprezentatmaisussepoateutilizapentrua
modificavaloareaoricruicmpcuexcepiacmpurilorprotejateiacelorcalculate.
Pentruamodificaonregistrarevatrebuisseafiezemainticoninutulsun
casetele detext. Pentrua afia nregistrarea dorit putem apela la barade defilare a
formularuluisaulabutoaneledecomandFindPrev(cautprecedentul)sauFindNext
(cauturmtorul)3[3].
ncazulncaresedoretemodificareamaimultornregistrri,trecereadelao
nregistrarelaaltasefaceprinaceleaimetode(baradedefilare/FindNext/FindPrev).
Odat afiate datele corespunztoare nregistrrii n formular, se efectueaz
modificrile.SeobservcntimpulmodificrilorbutonuldecomandRestoredevine
activ.ncontinuareseverificvizualcorectitudineamodificrilorefectuate.ncazde
valabilitatesetasteaz<Enter>pentrucamodificrilesfiepreluatenlist.ncazde
invaliditateseacioneazbutonulRestoreimodificrileefectuatesuntanulate.
Dacsedoretecaanumitecmpurisfieprotejatempotrivamodificrilor,seva
utilizacomandaToolsProtection;ProtectSheet...Proteciaserealizeazefectivprin
parole.
c)tergereauneinregistrriutilizndformularulserealizeazastfel:
sealegecomandaDataForm...Aparefereastraformularului;
seafieaznregistrareadoritprinmetodeleprezentatelamodificare;

se acioneaz butonul Delete. nregistrarea va fi definitiv tears din list,


nemaiputndfirecuperat.Deaceeaseceremareatenienutilizareaacestuibuton
decomand.

II.Consultareabazeidedate

3[3]

Pentruoregsirerapidanregistrri/nregistrrilordemodificatsepoateformulauncriteriudecautare.
AceastmetodesteprezentatncapitolulConsultareabazeidedate.

Consultarea unei baze de date const n cutarea i eventual extragerea


nregistrrilor care corespund anumitor criterii ce pot fi simple, complexe, multiple
(simultane sauexclusive),calculate. Criteriile reprezint reguli carepermit selectarea
unornregistrri.
nExcelobazdedatesepoateconsultantreimoduri:
cuajutorulformularelor(mtilor)deselecie;
cuajutorulfiltruluiautomat;
cuajutorulfiltruluiavansat..
a)Consultareabazeidedatecuajutorulformularelordeselecie.
AfiareaformularuluisefaceprincomandaDataForm...Existtreimodalitidea
regsinregistrriutilizndacestprocedeu,ianume:

rsfoindnregistrriledinlistprinintermediulbutoanelor FindPrev i Find


Next;
rsfoindbazadedateutilizndbaradedefilaredinformular;

utiliznd butonul Criteria(Criterii) pentru a gsi un subset de nregistrri ce


satisfacunanumitcriteriu.
ntructprimeledouvarianteaufostprezentatensubcapitolulActualizareabazeide
date,paragrafulmodificare,nevomopriasupraultimeimodaliti.
Prin acionarea butonului Criteria formularul deja cunoscut (figura anterioar) este
modificat n sensul golirii automate a casetelor de text ce corespundeau valorilor
rubricilorbazeidedate.Astfel,zoneledestinatecmpurilordevingoale.nacestezone
(casetedetext)utilizatorulvatastacondiiiledecutarenumitecriteriidecomparare.

Exemple:
a1) Dorim vizualizarea prin intermediul formularului a tuturor informaiilor
privindangajatulMoiseToma.
Rezolvare:
sepoziioneazcursorulnbazadedate;
sealegecomandaDataForm...
seacioneazbutonulCriteria
ncasetadetextNumesetasteazMoise
ncasetadetextPrenumesetasteazToma
seactioneazbutonulFindNext4[4]

dac Moise Toma este gsit n baza de date, formularul va fi completat


automatcunregistrareareferitoarelainformaiilesolicitate.
a2)Sedoreteconsultareabazeidedatenvedereaactualizriisalariuluioperatorilor.
Acetiaprimescomajorareasalariuluicu100.000lei.
Rezolvare.
sepozitioneazcursorulnbazadedate
sealegecomandaDataForm...
seacioneazbutonulCriteria
4[4]

ntructcutareaarelocncepndcupoziiacurentacursoruluinbazadedateserecomand
poziionareaacestuialanceputulsurseidedate.

ncasetadetextFunciesetasteazoperator
seacioneazbutonulFindNext5[5]
formularulvaafiaconinutulprimeinregistrricareconinefunciaoperator.
Utilizatorul va tasta n caseta de text Salariu noua valoare i anume 500.000,
reprezentndsalariulmajorat.
Pentruaafiacelelaltenregistrricaresatisfaccriteriul(funcia=operator)seutilizeaza
butoaneleFindNextiFindPrev.
Precizare:odatspecificatuncriteriu(simplusaumultiplu)utilizatorulvaavea
accesdoarlanregistrrilecarendeplinesccriteriilerespective.Decinuarelocorsfoire
a ntregii bazededate,ci doarasubsetului de nregistrri caresatisfacconditiile de
selecie. Pentruaaveaaccesdinnoulantreagabazdedateseacioneazbutoanele
CriteriaiapoiClear.
a3)Caresuntsalariaiicareauovechimemaimarede5ani?
Rezolvare:
sepoziioneazcursorullanceputulbazeidedate;
sealegecomandaDataForm...
seacioneazbutonulCriteria
ncasetadetextVechimesetasteaz:>5
seacioneazbutonulFindNext6[6]
formularulvaafiatoateinformaiiledespreprimulsalariatcuvechimea>5ani.

se acioneaz succesiv butonul Find Next pentru a vedea toi salariaii care
ndeplinescacestcriteriu.
Prinacestexemplusuntscoasenevidenctevadezavantajealemetodei:
vizualizareasefacenregistrarecunregistrare

se afieaz toate informaiile dei ne intereseaz doar numele i prenumele


angajailor
nuseacceptdectcriteriidecompararesimpleisimultane,cumarfi:
informaiidespresalariatulcunumeleMoiseiprenumeleToma(a1)
funcia=operator(a2)ivechimea>5ani(a3)suntcriteriisimple.
a4)Caresuntsalariaiicuvechimeantre5i10ani?
a5)Caresuntangajaiicusalariulntre500000i1000000?
a6)CaresuntangajaiicunumeleMoisesauAdam?
Exemplelea4)a6)solicitformulareaunorcriteriicomplexeinupotfirezolvate
prin aceast metod. Pentru soluionarea lor trebuie folosit una din metodele de
utilizeazcomandaDataFilter...ipecareleprezentmncontinuare.
b)Consultareabazeidedatecuajutorulfiltruluiautomat.
Aceastmetodpareaficeamaiutilizat.Eapermiteafiareadintrodat 7[7] a
ntreguluisubsetdeinregistrricaresatisfacanunitecriteriideselecie.Excelrealizeaz
-

5[5]

ntructcutareaarelocncepndcupoziiacurentacursoruluinbazadedateserecomand
poziionareaacestuialanceputulsurseidedate.
6[6]
ntructcutareaarelocncepndcupoziiacurentacursoruluinbazadedateserecomand
poziionareaacestuialanceputulsurseidedate.
7[7]
Seelimindezavantajulparcurgeriinregistrarecunregistrare

ofiltrarenlist,ascunzndnregistrrilecarenusatisfaccriteriul/criteriilerespective,
astfelnctlistacarermnevizibilconinedoarnregistrrilecareintereseaz.
Conformacesteimetodeprocedeuldeconsultareesteurmtorul:
sepoziioneazcursorulnbazadedate;

sealegecomanda DataFilter...; AutoFilter.Comanda AutoFilterdetermin


completareafiecruititlu(numedecmp)cuunbutondeextensie(figura1.102)prin
acruiacionareesteafiatolistdevarinateceasistutilizatorulnformularea
criteriilordecutare/extragere.

se definesc criteriile de filtrare pentru fiecare cmp, utiliznd butoanele de


extensieafiate.

Fig.1.102Filtrareaautomatbazeidedate
Existurmtoareleposibiliti:
b1)ssedefineascuncriteriusimplupeunsingurcmp.nacestcazsevaselecta,din
listadevarianteoferitdebutonuldeextensie,ovaloare.
Exemplu.CaresuntangajaiicunumeleMoise?
Rezolvare.
precizareacriteriului:dinlistanumelorseselecteazaMoise
rezultatulfiltrriiaparenfigur1.103.

Fig.1.103Rezultatulfiltrriiautomate(I)
b2)ssedefieasccriteriisimplepemaimulte cmpuri,criterii cevortrebuisfie
ndeplinitesimultan.
Exemplu.CaresuntinformaiiledinbazreferitoarelaMoiseToma?
Rezolvare.

precizarea criteriilor : din lista numelor se selecteaz Moise, iar din lista
prenumelorToma
rezultatulfiltrriisevedenfigura1.104.

Fig.1.104Rezultatulfiltrriiautomate(II)
b3)ssedefineascuncriteriucomplexpeunsingurcmp.nacestcazdinlistade
varianteoferitdebutonuldeextensieataatcmpuluirespectiv,vomalegeCustom....
Apareofereastrdedialogcareghideazutilizatorulnprecizareacriteriului/criteriilor
decautareiextragere8[8],rezultatulfiindafiatnfoaiadecalcul,prinfiltraredirectn
list(figura1.105).

Exemple:

Caresuntsalariaiicuvechimeantre5i10ani(inclusiv)?
- - precizareacriteriului:

Fig.1.105Fereastrpentrufiltrareaautomat
Custom
rezultatulfiltrriinfigura1.106

Fig.1.106Rezultatulfiltrriiautomate(III)
Serecomandutilizareabutoanelordeextensiedincadrulferestreidedialog.Ele
permitspreexempluselectareaoperatoruluidecomparaiedinlistaoperatorilorposibili.

b4)Definireacriteriilorcomplexepentrumaimultecmpuri.
8[8]

nprecizareacriteriilorsepotutilizacaracteregenerice:
?reprezintaunsingurcaracter
*reprezintaungrupdecaracteredintrunsir

Exemplu.

S se afieze doar nregistrrile referitoare la angajaii cu funcia analist sau


programatorcareausalariulntre600demiisi1miliondelei(inclusiv).
precizareacriteriilorsefacedupametodaanterioar,reinndcpentrufuncieseva
alegeoperatorulOr(sau),iarpentrusalariuoperatorulAnd(i)
rezultatulfiltrriinfigura1.107.

Fig.1.107Rezultatulfiltrriiautomate(IV)
Pentruaserevenilaafiareabazeidedateiniiale(nlturareafiltrrii)sepoatealege:
- - variantaAlldinlistaafiatprinacionareabutonuluideextensieataatcmpului
respectivsau
- - comandaDataFilter,ShowAll.
PentruarevenilamoduldeafiarenormalsealegecomandaDataAutoFilter,care
dezactiveazdeaceastdatcomandaAutoFilter.
AvantajulutilizriicomenziiAutofilterconstnfaptulcafieazdintrodattoate
nregistrrile care satisfac criteriile specificate, sub forma unei liste al crui coninut
poatefimodificat,tiprit,formatatsauchiartersdintrodat.
Dezavantajul utilizrii acestei metode de interogare const n faptul c nu se pot
defini restricii construite pe baz de formule de calcul simple sau complexe. Alt
dezavantajarrezultadinfaptulcrezultatuluneiinterogrinupoatefiplasatdectn
zonasurseibazeidedateinunaltzonafoiidecalculdesemnatedeutilizator.

c)Consultareabazelordedatecuajutorulfiltruluiavansat

Metodaconsultriibazelordedatecuajutorulfiltruluiavansatpresupuneparcurgerea
urmtoareloretape:
definireauneizonedecriterii;
definireacriteriilor;
definireaopionalauneizonedeextragere;
lansarea cutrii i extragerea propriuzis din baza de date a nregistrrilor ce
corespundcriteriilordecutareiextrageredefinitenzonadecriterii.
Interogrilebazatepeprocedeulfiltrriiavansate(AdvancedFilter)suntprezentate
peexempluluneibazededatepentruevidenafacturiloremisectreclieniiurmrirea
ncasriifacturilor.
Bazadedatedeclaratpecoordonatele (saunumit:Baz)esteilustratnfigura
1.108.

Fig.1.108Bazadedatepentrufiltrareaavansat
c1) Zonadecriterii poatefidefinitnaceeaifoaiedecalcul(ncareseaflbazade
date)sauntroaltfoaie.Adeseaestenecesarcazoneledecriteriiodatdefinitesfie
pstrate n vederea unor cutri/extrageri repetate. Chiar se recomand ca zonele de
criteriisfiedefiniteseparat,ntroaltfoaiedecalcul,pentruanusufocafoaiadecalcul
ceconinebazadedate,cuattmaimultcuctdatelerezultatenurmaextrageriivorfi
afiateobligatoriunaceeaifoaiedecalculncareseaflisursadedate.
Zonadecriteriiestecompusdintroliniececoninenumelecmpurilorceservescla
formulareacriteriiloriunasaumaimulteliniipentrudefinireaacestora.
Cmpul pe care se definesc criteriile, poate conine n prima linie a sa, totalitatea
rubricilorbazeidedatesaunumaioparteaacestora,dupcumdiferitelerubriciparticip
laconsultareabazeidedate.
Precizare:primalinieazoneidecriteriisevaobineprincopiereanumelorrespectivede
cmpuridinlist(dinliniadetitluriarubricilorbazeidedate).ncazcontrarexistriscul
apariieiuneiincompatibilitintredenumiriledinlisticeledinzonadecriterii.
c2) Definireacriteriilor. Sepotdefinicriteriidecomparaie,criteriimultipleicriterii
calculate.
Criteriiledecomparaieserealizeazcuajutoruloperatorilordecomparaieianume:>,
<, >=, <=, = , urmai de o valoare. n precizarea valorilor se pot utiliza caracterele
generice*sau?.
Deexemplu,utilizndbazadedateanteriordefinitpecoordonateleA5:K19:
- pentrua aflacare suntclienii al crornume ncepe culitera G vomutiliza
sintaxaG*;
- - pentruaaflacaresuntclieniialcrornumencepeculiteraBisetermincu
literanvomutilizasintaxaB*n;

- pentruaaflacaresuntclieniiacrorlocalitatededomiciliuseterminnliterele
ti(Bucureti,Ploieti,Piteti,etc.)vomutilizasintaxa*ti;
- - pentruaaflacaresuntclieniialcrornumeesteformatdincincilitere,dintre
careprimaeste g iultimaeste o (ex:GriRo,GenRo,Gesto)vomutilizasintaxa
g???o,s.a.m.d.
Criteriile multiple se obin prin combinarea criteriilor utiliznd operatorii logici (I;
SAU).Acestecriteriirespecturmtoarelereguli:
- - dacvalorilediferitelorcriteriisuntprecizatenzonadecriteriipeaceeailinie,
ele trebuie ndeplinite simultan, fiind considerate legate prin operatorul logic I,
constituinduncriteriumultiplu.
- - dacvalorilediferitelorcriteriisuntprecizatenzonadecriteriipeliniidiferite,
seconsidercelesuntlegateprinoperatorullogicSAU.

Prezentm n fig. 1.1091.110 dou exemple de construire a cmpurilor de


criteriimultiple.
- - primulexempluvizeazconstruireaunuicmpdecriteriipetotalitatearubricilor
bazei de date. Cmpul conine o linie (sub titlurile rubricilor) pentru precizarea
restriciilor legate prin operatorul logic I, i dou linii pentru precizarea
operatoruluilogicSAU.Ointerogarebazatpeunastfeldecmpdecriteriiar
aveaurmtorulenun:caresuntclieniipltitoridinBucuretiicaresuntclienii
nepltitoridinIaisauPloieti.
- -
-

Fig.1.109Zonadecriterii(I)
aldoileaexemplu(fig.1.110)vizeazconstruireaunuicmpdecriteriipeanumite
rubricialebazeidedate(Localitate,Platit,Majorri).Cmpulconine
Fig.1.110Zonadecriterii(II)

olinie(subtitlurilerubricilor)pentruprecizarearestriciilorlegateprinoperatorul
logicI,ioliniepentruprecizareaoperatoruluilogicSAU.Ointerogarebazat
peunastfeldecmpdecriteriiaraveaurmtorulenun:caresuntclieniinepltitori
din Bucureti sau Ploieti care au majorri de ntrziere la plata facturilor de peste
1.000.000lei.
Criteriile multiple evideniaz n esen faptul c restriciile pe care se
construieteinterogareapotfidefinitepemaimulterubrici.
Oparticularitateaacestorcriteriiesteaceeacsepotprecizarestriciintredou
limite(sauborne):olimitmaximpecarevalorilerubriciitrebuieslendeplineasc
iolimitminim.

Pentru a se construi criterii ce s rspund la astfel de interogri ntre dou


intervale,rubrica(rubricile)carevaconinerespectiveleintervalesedubleaz.Astfel,o
rubric va avea precizat o restricie ce semnific borna minim, iar a doua rubric
(dublatncmpuldecriterii)vaconinebornamaxim.
Deexemplu,nfigura1.111esteprezentatuncmpdecriterii,pentruurmtoarea
interogare: s se selecteze toi clienii nepltitori (Pltit=NU) din Bucureti
(Localitate=Bucureti), n primul semestru al anului 1998 (Data facturii >01/01/98 I
Data facturii<=06/30/98), care au penaliti ntre 500.000 lei i 1.000.000 lei
(Majorari>500000IMajorari<1000000).

Fig.1.111Zondecriterii(III)
Criteriile calculate sunt bazate pe formule care returneaz un rezultat logic
(TRUEsauFALSE).nacestcazprimalinieazoneidecriteriiestegoal,iarceadea
douavacuprindeformula/formulelerespective,darvaafiarezultatullogicalevalurii
formulei.
Sintaxaunorastfeldecriteriicalculateesteurmtoarea:

semnul=(egal)pentruasespecificafaptulcestevorbadeoformul;
adresaprimeiceluledindomeniulrubriciibazeidedate;
unoperatorlogicdecomparaie(=,>,<,>=,<=,AND,OR,NOT);
unargumentdecomparaiecarepoatefi:
adresauneicelule(ex.:=D2>B2);
oexpresie(ex.:=D2>B2*22%);
funciepredefinit(ex:=D2>AVERAGE(D2:D32).

Figura 1.112 ilustreaz urmtoarea formulare pentru selectarea clienilor


nepltitoridinBucuretipeultimele6luni(celulaE42)icareaupenaliticuprinse
ntretranelede25%dinvaloarei75%dinvaloare(celuleleF42iG42).

Fig.1.112Zondecriterii(IV)
Un alt exemplu de interogare bazat pe o rubric calculat, vizeaz utilizarea
funciilorpredefinite.
Astfel,dacsardoriselectareaclienilorpltitori(Pltit=DA),careauachitat
valoareafacturilorpestemediavaloricaacestoara,sarintroduceoformulcecalcula
medieipentrurubricaValoarefactur.
Figura1.113prezintcmpuldecriteriipentruoastfeldeinterogare.
FunciiletipbazededateprezentatencapitolulreferitorlafunciileExcel,
opereazielecucriterii,faptrelevatidefigura1.114.
Deexemplu,dacsarcalculasumafacturilorneachitaredeclieniidinBucureti
peultimulan,formulaDSUMaraveacaultimargument,uncmpdecriteriidefinitpe
coordonateleB87:D88.

Fig.1.113Zonadecriteriicufunciipredefinite

Fig.1.114Zonadecriteriicufunciipentrubazede
date
c3)Definireazoneideextragere.
Zonadeextrageretrebuiedefinitobligatoriunfoaiadecalculceconinebazade
date.Estedepreferatcazoneledeextrageresfieplasatelateralsaunjos,nraportcu
sursadedate.

Implicit,rezultatulfiltrriiseva
afiapebazadedate,carevafi
redimensionatnfunciede
cerineleinterogrii

Butonpentru
validarea
procesuluide
filtrareabazei
dedate
PrinListRange
seprecizeaz
coordonatelepe
caresadefinit
bazadedate
PrinCriteria
Rangese
precizeaz
coordonatele
cmpuluide
criterii

Fig.1.115Comenzipentrufiltrare
avansat
Zonadeextragereestecompusdintroliniececoninenumelecmpurilor(titlul
rubricilor) din baza de date despre care se dorete a se obine informaii. Preluarea
acestornumenprimalinieazoneideextrageresepoatefaceprincopiereanumelor
respectivedinantetullistei.
c4)Lansareacutriiiextragereapropriuzis.
AceastoperaieserealizeazprinapelareacomenziiDataFilterAdvanced
Filter...PeecranvafiafiatcasetadedialogAdvancedFilterfig.1.115)careinvit
utilizatorulsprecizezeplajadecelulecarereprezintbazadedate(ListRange)iplaja
carereprezintzonadecriterii(CriteriaRange).Utilizatorulvaactivaperndfiecare
dincaseteledetext,selectnddefiecaredatnfoaiadecalculplajarespectiv.
Concomitentcuoperaiadeselectare,ncasetadetextrespectivvorfipreluate 9[9]
coordonatele absolute ale plajei respective de celule (figura 1.116). Reamintim c
definirea zonei de extragere este opional. Astfel, dac se dorete vizualizarea
rezultatuluifiltrrii,directpesursadedate(cndnregistrrilecarenusatisfaccriteriile
din zonadecriterii vorfi ascunse, rmnnd vizibile doar nregistrrile care satisfac
criteriilerespective)sevaacionabutonulOK.
Efectulextrageriipentruointerogaredegenulcaresuntclieniipltitoridin
BucuretiicaresuntclieniinepltitoridinIaisauPloieti,esteprezentatnfigura
1.116.

9[9]

precizareacoordonatelorsepoatefaceiprintastareadirectncasetadeeditare,procedeunsmai
greoi.

Fig.1.116Rezultatulfiltrriiavansate
Revenirea afirii bazei de date la forma iniial (care includea totalitatea
nregistrrilor)sefaceprincomandaDataFilterShowAll
ncazulncareafostdefinitozondeextragereatunciutilizatorulvacompletacaseta
dedialog AdvancedFilter (figuraurmtoare)icucoordonateleabsolutealeacestei
zone(ncasetadetextCopyto).
Cmpulderezultatepoatefigeneratcaavndtoaterubricilebazeidedate(i
atunciseplaseazcursorulpeprimacelulacmpuluiderezultate)saupoatefigenerat
caavndnumaianumiterubrici.nacestultimcaz,respectivelerubricisevoreditape
primalinieacmpuluiderezultate,iarseleciacmpuluivancepedelacoordonatele
rubricilordefinite.
ntructcasetadetextCopytonuesteactivimplicit,estenecesarcapentruao
activasseselectezecellaltmoddeacionareianumeCopytoanotherlocation.
Relum exemplul precedent de interogare, ce va fi fcut prin extragere, cu
deosebireacsevorafiaclienii,adreseleacestora,localitiledincareprovin,numerele
defacturisumeledatorate.
Casetadedialog Advanced Filter,corespunztoareprocedeuluideextragere,
esteprezentatnfigura1.117.
Pentruinterogarea
prinextragere,se
activeaztipulde
aciuneCopyto
anotherlocation
PrinCopyTose
precizeaz
coordonatele
cmpuluide
rezultate

Fig.1.117Comenzipentrufiltrareavansat(II)

Fig.1.118Rezultatulfiltrriiavansate
LansareacutriiiextrageriisedeclaneazprinacionareabutonuluiOK.
Rezultateleinterogriisuntprezentatenfigura1.118
PrinselectareacaseteideselectareUniqueRecordsOnlynuvorfipreluatenzonade
rezultatenregistrrileduble(careauvaloriidentice,corespunztorrestriciilorimpusen
cmpuldecriterii).
Exempluldifigura1.119ilustreazconstruireacmpurilordecriteriiirezultatepentru
interogarea:caresuntclieniicrorafirmaleaemisfacturidelanceputulanuluipn
azi.

Cmpde
criterii

Cmpderezultate
Selecieunicanregistrrilor

Fig.1.119Dateicriteriipentrufiltrareavansat
Seimpunctevaprecizriprivindcaracteristicileextragerii:
- nregistrrileextraseconinnumaivalori(formulele decalculsuntextraseca
valori);
- - nregistrrileextrasenusuntlegatedesursadedate;eventualelemodificrin
bazadedatenusevorreflectanzonanregistrrilordejaextrase;
- - dimensiuneazoneideextragereesteajustatautomatlanumruldenregistrri
extrase.Deaceeacndseprecizeazcoordonatelezoneideextragere(casetadetext
CopytodinfereastraAdvancedFilter)seselecteazdoarosingurlinieianume
aceeacareconinenumelecmpurilor.
- - lista(subsetuldenregistrri)afiatnzonadeextragerepoatefiprelucratca
oricelist,poatefistocat,sintetizat,imprimat.


Sortareabazelordedate

RealizareasortriiuneibazededatesefacecuajutorulcomenziiSortdinmeniul
Data.
Aceastcomandpermiteordonareacresctoare(Ascending)saudescresctoare
(Descending)anregistrrilordinbazadedatedupmaximimtreicmpuri(simultan).
Alegereacomenzii Data Sort...determinapariiapeecranacaseteidedialog Sort
(fig.1.120)
Folosindbutoaneledeextensiedindreptulfiecreicasetedetextutilizatorulva
puteaprecizacmpuriledupcaressefacsortarea,ctiordineasortriipentrufiecare
cmp.
Din punct de vedere conceptual, sortarea dup mai multe cmpuri implic
precizarea mai multor niveluri de regrupare a datelor. Astfel cheile de sortare se
precizeaznordineaniveluluideconsistenadatelor:primulniveldesortaretrebuies
conin elementele celui deal doilea nivel, iar al doilea nivel trebuie s conin
elementeleceluidealtreileanivel,.a.m.d.Altfelspusordineasortriitrebuiesfiedela
domeniulcelmaicuprinztor,ladomeniulcelmaipuincuprinztor.
Dacsedoreteordonareadoardupuncmp,vaficompletatdoarprimacaset
detext,restulrmnndgoale.
Operaiuneadesortarencepeprinselectareabazeidedatesauprinpoziionarea
cursoruluipeprimaceluldinbaz,continuprinactivareacomenzii Data Sort i
definireacheilordesortareconcomitentcuprecizareaordiniincaresevafaceoperaia
desortareisencheieprinvalidareaoperaieicubutonulOK.
Exemplu.Ssereordonezebazadedatecrectorduplocalitateaclientului,apoi
dupdataemiteriifacturiiinfinaldupnumeleclientului.
Precizareacriteriilordesortareesteilustratnfigura1.120.
Rezultatuloperaiuniidesortareesteprezentatnfigura1.121.

Fig.1.120Casetadedialogpentrusortare

Fig.1.121Rezultatulsortrii

S-ar putea să vă placă și