Invatare Atomica

Operatori relationali si logici

Cum compari doua valori, cum combini mai multe conditii cu SI/SAU/NU si cum scrii totul intr-o formula care raspunde automat cu ADEVARAT sau FALS

Progres lectie:
0%
🎯

De ce conteaza lectia asta

La orice loc de munca unde se completeaza fise sau se tin evidente — masuratori de mediu, receptii de piese in atelier, cubaje de lemn la parchet — apare aceeasi intrebare: "valoarea asta e in norma sau nu?" Raspunsul e mereu unul din doua: DA sau NU. In foaia de calcul, acest DA/NU se numeste valoare logica, iar operatorii relationali sunt unealta cu care Excel compara doua valori si iti da automat raspunsul. Cand un singur criteriu nu e de ajuns — de exemplu vrei "in norma DOAR daca si temperatura si umiditatea sunt corecte in acelasi timp" — ai nevoie de operatorii logici SI, SAU si NU, care combina mai multe raspunsuri DA/NU intr-unul singur. Fara aceste doua unelte, orice verificare ramane facuta manual, cu ochiul, rand cu rand — lent si predispus la greseli.

Dupa aceasta lectie vei putea:

  • Sa folosesti cei sase operatori relationali din Excel (=, <>, <, >, <=, >=) pentru a compara doua valori
  • Sa explici ce este o valoare logica (TRUE/FALSE) si de unde apare ea intr-o foaie de calcul
  • Sa construiesti si sa citesti tabelul de adevar pentru operatorii logici SI, SAU si NU
  • Sa scrii formule cu functiile AND, OR si NOT pentru a combina mai multe conditii
  • Sa recunosti si sa repari cea mai frecventa greseala: confuzia intre = (comparatie) si atribuirea unei valori
  • Sa combini un operator relational cu IF pentru a afisa automat un mesaj in functie de conditie

Incearca singur!

Provocare — inainte sa citesti:

Lucrezi la un punct de masurare a calitatii apei dintr-un rau. Presupunem, ca exemplu de lucru (nu norma legala oficiala), ca o proba este "acceptata" doar daca pH-ul este intre 6,5 si 8,5 (inclusiv aceste valori) SI concentratia de oxigen dizolvat este cel putin 5 mg/l. Ai 3 probe: Proba 1 — pH 7,2, oxigen 6,1 mg/l. Proba 2 — pH 9,1, oxigen 6,5 mg/l. Proba 3 — pH 7,0, oxigen 3,8 mg/l. Scrie mai jos, pentru fiecare proba, daca e "acceptata" sau "respinsa" si de ce — apoi gandeste-te cum ai scrie o singura formula in Excel care sa faca automat aceasta verificare pentru sute de probe, fara sa te uiti manual la fiecare rand.

💡 Ai nevoie de un indiciu?

Ganditi-va la un control de acces la o poarta pazita: un vehicul intra doar daca are ecuson valabil SI este pe lista programata pe ziua respectiva. Daca lipseste oricare dintre cele doua conditii, poarta ramane inchisa. La fel functioneaza SI intr-o formula: toate conditiile legate prin SI trebuie sa fie adevarate deodata, altfel rezultatul final e FALS.

Subiectul lectiei de azi raspunde exact la aceasta intrebare: cum scrii comparatiile si cum le combini corect.

1

Ce este un operator relational

Un operator relational (numit si operator de comparatie) este un simbol care compara doua valori si raspunde cu o valoare logica: TRUE (adevarat), daca relatia este corecta, sau FALSE (fals), daca nu este. Spre deosebire de operatorii aritmetici (care produc un numar), operatorii relationali produc, in mod normal, unul din aceste doua raspunsuri — daca insa una din celulele comparate contine o eroare (de exemplu #N/A), comparatia propaga acea eroare mai departe, in loc de TRUE/FALSE.
Exemplu simplu — testeaza chiar acum:

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.

Exemplu dintr-o evidenta de masuratori:

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".

2

Cei sase operatori relationali din Excel

Excel are sase operatori relationali. Toti compara doua valori aflate de-o parte si de alta a simbolului si dau intotdeauna TRUE sau FALSE.
SimbolSe citesteExemplu de formulaRezultat
=egal cu=B2=100TRUE daca B2 contine exact 100
<>diferit de=B2<>100TRUE daca B2 NU este 100
<mai mic decat=B2<100TRUE daca B2 este sub 100
>mai mare decat=B2>100TRUE daca B2 este peste 100
<=mai mic sau egal=B2<=100TRUE daca B2 este 100 sau mai putin
>=mai mare sau egal=B2>=100TRUE daca B2 este 100 sau mai mult
Exemplu din masuratorile de la un punct de proba:

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.

3

Greseala tipica — cele doua roluri ale semnului =

In Excel, semnul = apare in doua roluri diferite, ceea ce creeaza confuzie mai ales la inceput: 1) la inceputul oricarei formule, ii spune programului "ce urmeaza este o formula de calculat"; 2) in interiorul formulei, folosit intre doua valori, este operatorul relational "egal cu", care compara, nu atribuie.
Cum recunosti confuzia:

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.

Cum o repari daca ai avut aceasta confuzie:

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.

4

Operatorul logic SI (AND) — toate conditiile deodata

Operatorul logic SI (in Excel, functia AND) combina doua sau mai multe valori logice (TRUE/FALSE) intr-una singura, dupa regula: rezultatul este TRUE numai daca toate conditiile sunt TRUE. Daca o singura conditie este FALSE, tot rezultatul devine FALSE, indiferent cate conditii erau adevarate.
Tabelul de adevar al operatorului SI, pentru doua conditii A si B:
ABA SI B
TRUETRUETRUE
TRUEFALSEFALSE
FALSETRUEFALSE
FALSEFALSEFALSE
Sintaxa in Excel (separatorul dintre conditii depinde de setarile regionale din Windows):

=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.

Atentie — daca lucrezi pe o interfata Excel tradusa integral 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.

Exemplu numeric complet — revenim la proba de apa:

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.

5

Operatorul logic SAU (OR) — cel putin o conditie

Operatorul logic SAU (in Excel, functia OR) combina mai multe valori logice dupa regula: rezultatul este TRUE daca cel putin una dintre conditii este TRUE. Rezultatul este FALSE numai atunci cand toate conditiile sunt FALSE, deodata.
Tabelul de adevar al operatorului SAU, pentru doua conditii A si B:
ABA SAU B
TRUETRUETRUE
TRUEFALSETRUE
FALSETRUETRUE
FALSEFALSEFALSE
Sintaxa in Excel:

=OR(conditie1;conditie2;...) — este suficient ca una singura dintre conditii sa fie TRUE.

Exemplu numeric complet — receptie piese la un atelier de mecanica:

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.

6

Operatorul logic NU (NOT) si combinarea cu IF

Operatorul logic NU (in Excel, functia NOT) este cel mai simplu dintre cei trei: primeste o singura valoare logica si o inverseaza — TRUE devine FALSE, iar FALSE devine TRUE.
Tabelul de adevar al operatorului NU, pentru o conditie A:
ANU A
TRUEFALSE
FALSETRUE
Sintaxa in Excel si un exemplu:

=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".

Combinarea cu IF — de la TRUE/FALSE la un mesaj util

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).

Exemplu numeric complet — proba de apa devine mesaj:

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.

Cum aplici aceeasi formula pe toate randurile — copierea in jos

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.

7

Recapitulare si conexiuni

Operatorii relationali compara doua valori si dau TRUE sau FALSE; operatorii logici SI, SAU si NU combina sau inverseaza aceste raspunsuri TRUE/FALSE, iar functia IF transforma rezultatul final intr-un mesaj util pentru raport.
Rezumat vizual al relatiilor:

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

Conexiune cu urmatoarea lectie:

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.

De retinut pentru activitatile practice:

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.

Exercitii practice

Exercitiul 1 (Nivel minim) — Evalueaza comparatiile

Pentru celula A1 care contine valoarea 14, scrie ce rezultat (TRUE sau FALSE) va afisa fiecare formula: a) =A1=14 b) =A1<>14 c) =A1>20 d) =A1>=14 e) =A1<10. Explica pe scurt, pentru fiecare, de ce a iesit TRUE sau FALSE.

Vezi rezolvarea

Pentru A1=14:

  1. =A1=14 → TRUE (14 este exact egal cu 14)
  2. =A1<>14 → FALSE (14 nu este diferit de 14)
  3. =A1>20 → FALSE (14 nu este mai mare decat 20)
  4. =A1>=14 → TRUE (14 este mai mare sau egal cu 14 - egalitatea e inclusa)
  5. =A1<10 → FALSE (14 nu este mai mic decat 10)

Exercitiul 2 (Nivel standard) — Verificare cubaj la un parchet forestier

Intr-o evidenta silvica, un lot de arbori marcati este considerat "gata de exploatare" daca diametrul de baza (d1,3 — masurat la 1,30 m inaltime) este de cel putin 35 cm SI varsta estimata este de cel putin 100 de ani. Pragurile sunt valori de exemplu pentru exercitiu, nu norma silvica oficiala — varsta reala a exploatabilitatii se stabileste prin amenajament silvic si este tipic 90-120 ani pentru fag sau gorun, in functie de specie si conditii. Ai 3 loturi: Lotul 1 — diametru 38 cm, varsta 105 ani; Lotul 2 — diametru 32 cm, varsta 110 ani; Lotul 3 — diametru 40 cm, varsta 85 ani. a) Scrie formula generala cu AND pentru celulele B2 (diametru) si C2 (varsta). b) Aplica formula manual (pe hartie) pentru fiecare din cele 3 loturi si spune daca fiecare e "gata de exploatare". c) Scrie formula completa cu IF care afiseaza textul "Gata de exploatare" sau "Asteapta" in functie de rezultatul AND.

Vezi rezolvarea

a) Formula generala: =AND(B2>=35;C2>=100)

b) Aplicare manuala pe cele 3 loturi:

  1. Lotul 1 (38 cm, 105 ani): 38>=35 TRUE si 105>=100 TRUE → AND = TRUE → gata de exploatare
  2. Lotul 2 (32 cm, 110 ani): 32>=35 FALSE, chiar daca varsta e ok → AND = FALSE → nu e gata
  3. Lotul 3 (40 cm, 85 ani): 40>=35 TRUE, dar 85>=100 FALSE → AND = FALSE → nu e gata

c) Formula completa: =IF(AND(B2>=35;C2>=100);"Gata de exploatare";"Asteapta")

Exercitiul 3 (Nivel performanta) — Sistem de alerta pentru un depozit de materiale

Un depozit de materiale de constructii vrea o formula de alerta automata pentru fiecare produs din stoc. Regula: produsul intra la "ALERTA" daca stocul curent este sub pragul minim SAU daca produsul nu s-a mai vandut in ultimele 90 de zile (in acest caz consideri ca e "stoc mort", chiar daca e peste prag). Ai in foaia de calcul: coloana B = stoc curent, coloana C = prag minim, coloana D = zile de la ultima vanzare. a) Scrie formula cu OR pentru randul 2, care combina cele doua conditii de alerta. b) Testeaza formula manual pentru 3 produse: Produsul X (B=45, C=50, D=20), Produsul Y (B=120, C=50, D=110), Produsul Z (B=80, C=50, D=15) — spune pentru fiecare daca intra la alerta si de ce. c) Scrie formula completa cu IF care afiseaza "ALERTA" sau "OK". d) Explica intr-o propozitie de ce, pentru aceasta regula, operatorul potrivit este OR si nu AND.

Vezi rezolvarea

Nu iti dau rezultatele calculate pentru cele 3 produse - construieste-le singur cu formula si verifica-le cu criteriile de mai jos:

  1. a) Formula cu OR pentru randul 2: =OR(B2<C2;D2>90) - prima conditie prinde stocul sub prag, a doua prinde stocul mort, indiferent de nivelul stocului.
  2. b) Testeaza manual fiecare produs inlocuind B, C, D cu valorile reale in cele doua comparatii din formula, pe rand; noteaza care conditie (sau ambele) iese TRUE pentru fiecare produs.
  3. c) Formula completa: =IF(OR(B2<C2;D2>90);"ALERTA";"OK")

d) OR e potrivit pentru ca fiecare motiv de alerta e independent - un produs poate intra la alerta DOAR din stoc mic SAU DOAR din lipsa vanzarilor, fara sa fie nevoie ca ambele sa fie adevarate deodata (asta ar cere AND, mult mai restrictiv).

Criteriu de verificare: din cele 3 produse ar trebui sa gasesti cel putin un caz de alerta prin stoc, un caz de alerta prin stoc mort si un caz OK - daca iti ies toate 3 la fel, recitesc formula.

Ce ai invatat astazi

  • Operatorii relationali (=, <>, <, >, <=, >=) compara doua valori si dau TRUE sau FALSE
  • Semnul = are doua roluri diferite: start de formula si operator de comparatie — nu atribuie o valoare
  • AND(conditie1;conditie2;...) — TRUE doar daca toate conditiile sunt TRUE
  • OR(conditie1;conditie2;...) — TRUE daca cel putin o conditie este TRUE
  • NOT(conditie) — inverseaza o singura valoare logica (TRUE devine FALSE si invers)
  • Tabelul de adevar arata toate combinatiile posibile de intrari si rezultatul lor pentru SI, SAU, NU
  • IF(conditie;valoare_adevarat;valoare_fals) transforma rezultatul TRUE/FALSE intr-un mesaj util
  • IF(AND(...);...;...) si IF(OR(...);...;...) sunt combinatiile cele mai folosite in verificari reale

Vrei mai mult?

Provocare: fara sa folosesti functia XOR, construieste o formula care da TRUE doar atunci cand EXACT UNA din doua conditii (A si B) este adevarata, nu ambele si nu niciuna - folosind doar AND, OR si NOT combinate intre ele. Testeaza-ti formula pe toate cele 4 combinatii posibile de TRUE/FALSE.

  • De gandit: NOT(AND(A;B)) si AND(NOT(A);NOT(B)) arata asemanator, dar dau rezultate diferite pentru aceleasi A si B. De ce nu sunt echivalente? (incearca A=TRUE, B=FALSE in amandoua si compara).
  • Deschidere: aceeasi logica SI/SAU/NU sta la baza filtrelor din bazele de date si a interogarilor SQL (clauza WHERE) - un magazin online care cauta produse "pret sub 100 SI stoc peste 0" foloseste exact acelasi AND pe care l-ai scris azi in Excel.

Urmatoarea lectie

Continua cu Expresii compuse — cand alegi imbricarea IF-urilor si cand e mai simplu SI/SAU, plus cum urmaresti evaluarea pas cu pas a unei expresii cu mai multe conditii.

Continua →