Ce este un operator relational
Daca scrii intr-o celula goala =5>3 si apesi Enter, Excel afiseaza TRUE, pentru ca 5 este intr-adevar mai mare decat 3. Daca scrii =5<3, Excel afiseaza FALSE, pentru ca 5 nu este mai mic decat 3.
Ai in celula B2 valoarea masurata a temperaturii apei, 18,4°C. In celula C2 scrii formula =B2>20. Excel compara 18,4 cu 20 si afiseaza FALSE, pentru ca 18,4 nu este mai mare decat 20 — practic celula iti raspunde automat "nu, temperatura nu depaseste pragul de 20°C".
Cei sase operatori relationali din Excel
| Simbol | Se citeste | Exemplu de formula | Rezultat |
|---|---|---|---|
| = | egal cu | =B2=100 | TRUE daca B2 contine exact 100 |
| <> | diferit de | =B2<>100 | TRUE daca B2 NU este 100 |
| < | mai mic decat | =B2<100 | TRUE daca B2 este sub 100 |
| > | mai mare decat | =B2>100 | TRUE daca B2 este peste 100 |
| <= | mai mic sau egal | =B2<=100 | TRUE daca B2 este 100 sau mai putin |
| >= | mai mare sau egal | =B2>=100 | TRUE daca B2 este 100 sau mai mult |
Ca exemplu de lucru (nu norma oficiala), presupunem ca intervalul admis pentru pH este intre 6,5 si 8,5 inclusiv. "Inclusiv" inseamna ca 6,5 si 8,5 sunt si ele acceptate, deci formulele corecte pentru verificarea celor doua capete de interval folosesc >= si <=, nu > si <. Pentru pH-ul din B2, verifici marginea de jos cu =B2>=6,5 si marginea de sus cu =B2<=8,5.
Greseala tipica — cele doua roluri ale semnului =
Un elev scrie =C5=100 si crede ca a "pus 100 in C5". Nu este asa: formula este scrisa in alta celula (de exemplu D5), citeste ce e deja in C5 si il compara cu 100. Daca C5 contine 100, D5 afiseaza TRUE; daca C5 contine orice alta valoare, D5 afiseaza FALSE. Continutul lui C5 ramane neschimbat — comparatia nu modifica niciodata celula comparata.
Daca vrei sa pui valoarea 100 in celula C5, o scrii direct in C5, fara semnul =, sau prin alta formula care calculeaza 100 in C5. Daca vrei sa verifici daca C5 este 100, scrii formula de comparatie in alta celula, ca in exemplul de mai sus. Cele doua actiuni — a scrie o valoare si a compara o valoare — sunt intotdeauna in celule diferite.
Operatorul logic SI (AND) — toate conditiile deodata
| A | B | A SI B |
|---|---|---|
| TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE |
| FALSE | TRUE | FALSE |
| FALSE | FALSE | FALSE |
=AND(conditie1;conditie2;...) — poate primi mai mult de doua conditii, toate trebuie sa fie TRUE. Separatorul dintre argumente (; sau ,) NU depinde de limba interfetei Excel, ci de setarea List separator din Windows: pe un calculator cu setari regionale romanesti, separatorul este ; chiar daca interfata Excel este in engleza; pe unul cu setari regionale americane (sau UK), separatorul este , chiar daca interfata Excel este tradusa in romana.
O interfata Excel tradusa in romana schimba, pe langa separator, si numele functiilor si textul afisat pentru valorile logice: AND devine SI(), OR devine SAU(), NOT devine NU(), IF devine DACA(), iar celula afiseaza ADEVARAT / FALS in loc de TRUE/FALSE — =AND(...) tastat pe o astfel de interfata da eroarea #NUME?. In aceasta lectie folosim numele in engleza (AND/OR/NOT/IF, TRUE/FALSE), pentru ca sunt cele mai raspandite si cele recunoscute de majoritatea materialelor si tutorialelor; daca interfata ta este tradusa, scrie SI/SAU/NU/DACA si citeste ADEVARAT/FALS in locul lor — logica formulei ramane identica.
Proba are pH=7,2 in celula B2 si oxigen=6,1 in celula C2. Norma: pH intre 6,5 si 8,5 inclusiv SI oxigen cel putin 5. Formula =AND(B2>=6,5;B2<=8,5;C2>=5) verifica toate cele trei conditii: 7,2>=6,5 este TRUE, 7,2<=8,5 este TRUE, 6,1>=5 este TRUE. Toate trei fiind TRUE, formula afiseaza TRUE — proba este acceptata.
Operatorul logic SAU (OR) — cel putin o conditie
| A | B | A SAU B |
|---|---|---|
| TRUE | TRUE | TRUE |
| TRUE | FALSE | TRUE |
| FALSE | TRUE | TRUE |
| FALSE | FALSE | FALSE |
=OR(conditie1;conditie2;...) — este suficient ca una singura dintre conditii sa fie TRUE.
Ca exemplu de lucru (nu standard oficial), presupunem ca diametrul admis pentru un bolt este intre 19,8 mm si 20,2 mm. O piesa se marcheaza "de rebutat" daca diametrul este strict sub 19,8 SAU strict peste 20,2. Piesa masurata are diametrul 20,5 mm, in celula D2. Formula =OR(D2<19,8;D2>20,2): 20,5<19,8 este FALSE, dar 20,5>20,2 este TRUE. Cu cel putin o conditie TRUE, OR afiseaza TRUE — piesa este de rebutat.
Operatorul logic NU (NOT) si combinarea cu IF
| A | NU A |
|---|---|
| TRUE | FALSE |
| FALSE | TRUE |
=NOT(conditie). Formula =NOT(C2="acceptata") afiseaza TRUE exact atunci cand C2 nu este exact textul "acceptata" — atentie, = compara textul integral, nu cauta un cuvant in interior: daca C2 ar contine "proba acceptata", comparatia C2="acceptata" tot ar da FALSE, pentru ca textele nu sunt identice. In plus, compararea de text cu = nu este sensibila la litere mari/mici — C2="Acceptata" (cu A mare) da tot TRUE la testul C2="acceptata".
Valorile TRUE si FALSE sunt corecte pentru calcule, dar intr-un raport citit de oameni e mai clar un text. De aceea, operatorii relationali si logici se combina de obicei cu functia IF, invatata la lectia despre calcul tabelar avansat: =IF(conditie;valoare_daca_adevarat;valoare_daca_fals).
Pentru proba cu pH=7,2 (B2) si oxigen=6,1 (C2), in loc sa afisezi doar TRUE, scrii formula completa: =IF(AND(B2>=6,5;B2<=8,5;C2>=5);"Acceptata";"Respinsa"). Excel evalueaza intai AND-ul (rezultat TRUE, ca la Atomul 4), apoi IF alege primul rezultat, pentru ca conditia e TRUE, si afiseaza textul "Acceptata" direct in celula.
Pana acum ai scris formula o singura data, intr-o singura celula. In practica ai sute de randuri de verificat, nu unul — exact provocarea de la inceputul lectiei. Pasii concreti, pentru exemplul cu probele de apa, presupunand date de la randul 2 pana la randul 20:
1) scrii formula completa o singura data, in prima celula de rezultat, D2: =IF(AND(B2>=6,5;B2<=8,5;C2>=5);"Acceptata";"Respinsa") si apesi Enter — D2 afiseaza rezultatul pentru randul 2.
2) dai click pe celula D2 ca sa o selectezi, apoi duci mausul in coltul din dreapta-jos al celulei, exact peste patratelul mic negru care apare acolo (numit maner de umplere / "fill handle") — cursorul mausului se schimba intr-o cruce subtire.
3) tii apasat butonul stang al mausului si tragi in jos pana la ultimul rand cu date (D20) — sau, mai rapid, dai dublu-click pe maner cand coloanele vecine (B si C) au date pe toate randurile, si Excel completeaza singur, automat, pana la ultimul rand cu date.
4) eliberezi butonul mausului: acum fiecare rand are propria formula, cu referintele actualizate automat de Excel — D3 foloseste B3 si C3, D4 foloseste B4 si C4, si asa mai departe; nu mai vezi B2/C2 repetat in toate celulele.
Asa raspunzi la intrebarea din provocarea de la inceput: nu scrii formula de sute de ori, o scrii o singura data, apoi o copiezi in jos, iar Excel actualizeaza singur referintele de celula pentru fiecare rand.
Recapitulare si conexiuni
Operatori relationali (= <> < > <= >=) — compara doua valori, dau TRUE/FALSE
↓ raspunsurile se combina cu
Operatori logici — AND (toate TRUE), OR (cel putin una TRUE), NOT (inverseaza)
↓ rezultatul final se prezinta cu
IF — transforma TRUE/FALSE intr-un text sau numar util pentru raport
Ati invatat sa combinati doua-trei conditii simple. In lectia urmatoare veti invata sa construiti expresii compuse mai complexe: cand alegeti sa imbricati mai multe IF-uri unul in altul si cand e mai simplu sa folositi AND/OR, plus cum se evalueaza pas cu pas o expresie lunga, ca sa nu va incurcati la formule cu multe conditii.
Operatorii relationali dau mereu TRUE sau FALSE, niciodata un numar calculat.
<> inseamna "diferit de" — nu != ca in alte limbaje.
Semnul = are doua roluri: start de formula, si operator de comparatie in interiorul ei — nu atribuie valori.
AND(conditie1;conditie2;...) — TRUE doar daca toate sunt TRUE.
OR(conditie1;conditie2;...) — TRUE daca cel putin una e TRUE.
NOT(conditie) — inverseaza singura conditie primita.
Combinatia IF(AND(...);...;...) sau IF(OR(...);...;...) transforma verificarea intr-un mesaj clar in raport.