Menu

ORAZ, LUB i NIE z JEŻELI w Excelu (AND, OR, NOT)

=ORAZ(B2>=10;B2<=20) zwraca PRAWDA tylko wtedy, gdy każdy warunek jest spełniony, a =LUB(B2="North";B2="South") zwraca PRAWDA, gdy spełniony jest co najmniej jeden. Poznaj ORAZ, LUB, NIE i XOR osobno i w JEŻELI, test „między dwiema liczbami” oraz zapis ORAZ i LUB w formułach tablicowych.

Każdy arkusz na tej stronie działa na żywo: zmień liczbę albo formułę, a się przeliczy.

=ORAZ(B2>=50;C2>=50) (po angielsku AND) zwraca PRAWDA tylko wtedy, gdy oba warunki są spełnione. =LUB(B2>=50;C2>=50) (OR) zwraca PRAWDA, gdy spełniony jest co najmniej jeden z nich. W funkcji JEŻELI zamieniają dwa warunki w jeden test: =JEŻELI(ORAZ(B2>=50;C2>=50);"Pass";"Fail"). Tabele pokazują formuły po angielsku, ale możesz w nich wpisywać formuły także po polsku, ze średnikami.

Zaliczenie obu części albo jednej z nich
D2
ABCDE
1StudentExamProjectBoth 50+Either 50+
2Ana7264PassPass
3Ben4580FailPass
4Chloe5851PassPass
5Dan3842FailFail
6Eve9147FailPass
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =JEŻELI(ORAZ(B2>=50;C2>=50);"Pass";"Fail")

Ben i Eve zaliczają jedną część, a drugiej nie, więc nie zaliczają w kolumnie D (ORAZ), a zaliczają w kolumnie E (LUB). Dan nie zalicza żadnej części i nie zalicza w obu kolumnach. Zmień egzamin Bena w B3 na 55, a zaliczy także w D.

Funkcja ORAZ

=AND(logical1, [logical2], ...)

ORAZ przyjmuje do 255 warunków i zwraca PRAWDA tylko wtedy, gdy każdy z nich daje PRAWDA. Wystarczy jeden FAŁSZ, aby wynik był FAŁSZ. Sama ORAZ pokazuje w komórce PRAWDA albo FAŁSZ; w funkcji JEŻELI decyduje, który wynik JEŻELI zwróci.

Sprawdzanie, czy liczba jest między dwiema wartościami

Excel nie ma funkcji MIĘDZY. Użyj ORAZ z dolną i górną granicą:

Czy temperatura mieści się w zakresie?
C2
ABCD
1SampleTempBetween 10 and 20Status
2S114TRUEOK
3S222FALSECheck
4S310TRUEOK
5S47FALSECheck
6S520TRUEOK
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =ORAZ(B2>=10;B2<=20)

S3 i S5 leżą dokładnie na granicach i liczą się jako mieszczące się w zakresie, bo testy używają >= i <=. Aby wykluczyć granice, użyj > i <. Gdy granice trzymasz w komórkach, =ORAZ(B2>=$F$1;B2<=$F$2), możesz zmienić zakres bez edycji formuły. Test taki jak 10<=B2<=20 w Excelu nie działa: porównuje 10<=B2 (PRAWDA albo FAŁSZ) z 20, a Excel stawia PRAWDA i FAŁSZ wyżej niż każdą liczbę, więc wynik zawsze to FAŁSZ.

Funkcja LUB

=OR(logical1, [logical2], ...)

LUB zwraca PRAWDA, jeśli co najmniej jeden warunek daje PRAWDA, a FAŁSZ tylko wtedy, gdy wszystkie dają FAŁSZ. To zwykły sposób na zaakceptowanie kilku wartości tekstowych:

Strefa według regionu
C2
ABC
1OrderRegionZone
21001NorthZone 1
31002EastZone 2
41003SouthZone 1
51004WestZone 2
61005southZone 1
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =JEŻELI(LUB(B2="North";B2="South");"Zone 1";"Zone 2")

Porównania tekstu nie rozróżniają wielkości liter, więc south małymi literami też trafia do Zone 1. Przy długiej liście akceptowanych wartości =OR(B2={"North","South","Central"}) (postać angielska) porównuje B2 z każdym elementem stałej tablicowej za jednym razem.

NIE i XOR

NIE (NOT) odwraca wartość logiczną: =NIE(PRAWDA) daje FAŁSZ. Dobrze się czyta, gdy masz warunek odwrotny do tego, którego potrzebujesz: =JEŻELI(NIE(C2="Done");"Follow up";"") to to samo co =JEŻELI(C2<>"Done";"Follow up";"").

XOR, dostępna od Excela 2013, to alternatywa wykluczająca: przy dwóch warunkach daje PRAWDA, gdy dokładnie jeden z nich daje PRAWDA, a FAŁSZ, gdy oba dają PRAWDA albo oba FAŁSZ. Przy większej liczbie warunków daje PRAWDA, gdy prawdziwych jest nieparzyście wiele.

NIE i XOR
D2
ABCDE
1TaskOwnerStatusOpenOne check only
2ReportAnaDoneFALSEFALSE
3BudgetBenOpenTRUEFALSE
4SlidesAnaOpenTRUETRUE
5SurveyBenDoneFALSETRUE
6PlanAnaDoneFALSEFALSE
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =NIE(C2="Done")

Kolumna E daje TRUE dla Slides (Ana, ale nie Done) i Survey (Done, ale nie Ana), a FALSE tam, gdzie spełnione są oba warunki albo żaden.

ORAZ i LUB razem

Warunki można zagnieżdżać: ORAZ w LUB albo LUB w ORAZ. Handlowiec dostaje premię, gdy jest z regionu North i albo sprzedał więcej niż 1000, albo podpisał umowę z nowym klientem:

Zasada przyznawania premii
E2
ABCDE
1RepRegionSalesNew clientBonus
2AnaNorth1200NoBonus
3BenNorth700YesBonus
4ChloeSouth1500Yes
5DanNorth900No
6EveNorth1100YesBonus
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =JEŻELI(ORAZ(B2="North";LUB(C2>1000;D2="Yes"));"Bonus";"")

W polskim Excelu formuła z E2 to =JEŻELI(ORAZ(B2="North";LUB(C2>1000;D2="Yes"));"Bonus";""). Premię dostają Ana (sprzedaż), Ben (nowy klient) i Eve (oba). Chloe spełnia część z LUB, ale jest z South, a Dan jest z North, ale nie spełnia żadnego warunku z LUB.

Ćwiczenie: darmowa wysyłka

Darmowa wysyłka
D2
ABCD
1OrderTotalMemberShipping
2100135Yes
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.

Twoja kolej: W D2 pokaż "Free", gdy wartość zamówienia w B2 wynosi co najmniej 50 albo klient jest członkiem (C2 to "Yes"), a w przeciwnym razie pokaż "Paid".

ORAZ i LUB w formułach tablicowych: użyj * i +

ORAZ i LUB sprowadzają wszystko, co dostaną, do jednego PRAWDA albo FAŁSZ. W jednym wierszu o to właśnie chodzi, ale nie wtedy, gdy formuła działa na całej kolumnie naraz: =ORAZ(B2:B6="North";C2:C6>100) zwraca jedną wartość dla pięciu wierszy razem. W formułach tablicowych (FILTRUJ, SUMA.ILOCZYNÓW, SUMA z warunkiem) zapisz warunki w nawiasach i mnóż je zamiast ORAZ, a dodawaj zamiast LUB. PRAWDA liczy się jako 1, a FAŁSZ jako 0, więc iloczyn daje 1 tylko wtedy, gdy oba warunki są spełnione, a suma wynosi co najmniej 1, gdy spełniony jest którykolwiek.

Liczenie z * i +
F2
ABCDEF
1RepRegionSalesCount
2AnaNorth1200North and over 1,0002
3BenSouth700North or over 1,0004
4ChloeNorth900
5DanSouth1500
6EveNorth1100
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =SUMA.ILOCZYNÓW((B2:B6="North")*(C2:C6>1000))

F2 liczy 2 wiersze (Ana i Eve), F3 liczy 4 (wszyscy poza Benem). W F3 ważne jest >0: wiersz, który spełnia oba warunki, daje sumę 2, a porównanie zamienia każdą sumę większą od 0 w jedno PRAWDA. Ten sam schemat filtruje wiersze, =FILTRUJ(A2:C6;(B2:B6="North")*(C2:C6>1000)); do zwykłego liczenia z logiką ORAZ wystarczy LICZ.WARUNKI bez tablic: =LICZ.WARUNKI(B2:B6;"North";C2:C6;">1000"), zobacz stronę o LICZ.WARUNKI.

Najczęściej zadawane pytania

Jak użyć JEŻELI z ORAZ w Excelu?

Wstaw ORAZ do testu funkcji JEŻELI: =JEŻELI(ORAZ(B2>=50;C2>=50);"Pass";"Fail"). Wynik to Pass tylko wtedy, gdy i B2, i C2 wynoszą co najmniej 50.

Jak sprawdzić, czy liczba jest między dwiema wartościami w Excelu?

Użyj ORAZ z dwoma porównaniami: =ORAZ(B2>=10;B2<=20) zwraca PRAWDA dla każdej wartości od 10 do 20 włącznie. W funkcji JEŻELI: =JEŻELI(ORAZ(B2>=10;B2<=20);"In range";"Out of range").

Czym różni się ORAZ od LUB w Excelu?

ORAZ zwraca PRAWDA tylko wtedy, gdy każdy warunek daje PRAWDA. LUB zwraca PRAWDA, gdy co najmniej jeden warunek daje PRAWDA. =ORAZ(PRAWDA;FAŁSZ) daje FAŁSZ, a =LUB(PRAWDA;FAŁSZ) daje PRAWDA.

Dlaczego ORAZ nie działa w mojej formule z FILTRUJ albo SUMA.ILOCZYNÓW?

ORAZ i LUB sprowadzają cały zakres do jednego PRAWDA albo FAŁSZ zamiast do jednej wartości na wiersz. W formułach tablicowych mnóż warunki zamiast ORAZ, (B2:B6="North")*(C2:C6>100), i dodawaj je zamiast LUB.

Czy mogę użyć ORAZ i LUB w tej samej formule?

Tak, zagnieźdź jedną funkcję w drugiej: =JEŻELI(ORAZ(B2="North";LUB(C2>1000;D2="Yes"));"Bonus";"") wymaga North oraz albo sprzedaży powyżej 1000, albo Yes w D2.

Ilustracja języków programowania w Coddy

Ucz się programowania z Coddy

ZACZNIJ