Streszczenie
- Instrukcja IF zwraca wartość bazującą na ocenie TRUE/FALSE. Instrukcje IF można zagnieżdżać wewnątrz innych instrukcji, aby tworzyć złożoną logikę.
- Instrukcja SWITCH ocenia wyrażenie i porównuje je z wieloma wartościami w celu znalezienia dopasowania, a następnie zwraca odpowiadającą mu wartość.
- Do złożonych testów logicznych z wieloma różnymi operatorami należy stosować instrukcję IF, a do prostych testów równości — instrukcję SWITCH.
Instrukcja IF jest typową funkcją logiczną w programie Excel . Polecenie SWITCH jest mniej znane, ale w niektórych przypadkach można go używać zamiast polecenia IF. Przyjrzyjmy się różnicom między instrukcjami IF i SWITCH w programie Excel oraz przypadkom ich użycia.

Czym jest polecenie JEŻELI w programie Microsoft Excel?
Instrukcja IF w programie Excel to funkcja wykonująca logiczny test w celu ustalenia, czy określony warunek jest prawdą, czy fałszem. Zwraca wartość opartą na wynikach oceny, umożliwiając podejmowanie decyzji na podstawie wyników.
Podstawowe polecenie IF
Zacznijmy od omówienia podstawowego polecenia IF, zanim zagłębimy się w problem, który SWITCH próbuje rozwiązać.
Składnia podstawowego polecenia IF jest następująca:
IF (logical_test, result_if_true, [result_if_false])
Parametr logical_test to warunek, który funkcja będzie testować, a result_if_true to wynik, który funkcja zwróci, jeśli jego wynikiem będzie PRAWDA. Parametr result_if_false to wynik, który funkcja zwraca, jeżeli wynikiem jest FAŁSZ.
Na poniższym zrzucie ekranu chcemy zwrócić ocenę zaliczoną lub niezaliczoną dla wyniku, w zależności od tego, czy wartość wyniku testu w kolumnie C jest większa lub równa 50.

Poniższy wzór zostanie zapisany w komórce C2:
IF(C2 >= 50, "Pass", "Fail")
A oto wynik:

Zagnieżdżone instrukcje IF
Jeśli chcesz sprawdzić wiele warunków jednocześnie, możesz umieścić instrukcje IF wewnątrz innej instrukcji.
Są to tak zwane zagnieżdżone instrukcje IF, a ich podstawowa składnia jest następująca:
=IF(logical_test1, result_if_true1, IF(logical_test2, result_if_true2, result_if_false2))
Rozważ poniższy przykład, w którym każdemu kolorowi w kolumnie A (czerwony, żółty lub zielony) odpowiada odpowiedni stan w kolumnie B (np. Stop, Ostrożnie, Idź i Nieznany).

Najpierw wprowadzimy następującą formułę do komórki B2, aby określić kolor w komórce A2:
=IF(A2 = "Red", "Stop", IF(A2 = "Yellow", "Caution", IF(A2 = "Green", "Go", "Unknown")))
Ponieważ A2 jest czerwone, zwróci wartość Stop, zgodnie ze wzorem powyżej. Gdy kopiujemy go do innych komórek, każdy kolor będzie miał swój stan.

Jak widać, logika może szybko stać się myląca, gdy zagnieżdżasz instrukcje IF. Tutaj właśnie pojawia się polecenie SWITCH, które nieco upraszcza sprawę.
Czym jest polecenie Switch w programie Excel?
Polecenie SWITCH w programie Excel jest stosunkowo nową funkcją. Przyjmuje wyrażenie i porównuje je z wieloma wynikami w formacie bardziej czytelnym i ustrukturyzowanym niż zagnieżdżone instrukcje IF.
Podstawowa składnia instrukcji SWITCH jest następująca:
SWITCH (expression_to_test, test_value1, result_if_true1, [test_value2, result_if_true2,…], [value_if_no_match])
expression_to_test to wartość, która zostanie oceniona w odniesieniu do wartości testowych (test_value1, test_value2 itd.). Jeśli wartość jest zgodna, zwraca odpowiedni wynik. Na przykład, jeśli test_value1 pasuje do wyrażenia, zwraca result_if_true1.
Można określić parametr value_if_no_match, aby zwrócić wartość w przypadku, gdy nie zostanie znalezione żadne dopasowanie.
Ponieważ polecenie SWITCH może uprościć zagnieżdżone instrukcje IF, możemy wykorzystać przykład koloru z zagnieżdżonej instrukcji if. Oto wersja SWITCH:
=SWITCH(A2, "Red", "Stop", "Yellow", "Caution", "Green", "Go", "Unknown")
Jak widać, formułę tę można teraz łatwiej odczytać jako instrukcję SWITCH i działa ona tak samo jak wersja IF.
Porównanie IF i Switch: przypadki użycia
W porównaniu do instrukcji SWITCH, instrukcję IF najlepiej stosować w przypadku wykonywania złożonych testów logicznych obejmujących wiele warunków. Działa również dobrze z testami wykorzystującymi różne operatory logiczne w programie Excel (np. >, <, =, =""> <>, AND i OR). Dlatego jest bardziej elastyczne i może obsłużyć więcej sytuacji niż polecenie SWITCH.
Z drugiej strony instrukcja SWITCH działa dobrze, gdy testy logiczne obejmują proste operacje równości i stałe wartości, biorąc pod uwagę, że jej podstawowa forma ocenia jedynie operator równości. Jeżeli używasz instrukcji SWITCH do złożonych testów logicznych, nie różni się ona niczym od użycia instrukcji IF.
Przykład złożonej zagnieżdżonej instrukcji IF:
=IF(A1 >= 90, "Grade A", IF(A1 >= 75, "Grade B", "Grade C"))
Polecenie SWITCH można napisać w następujący sposób:
=SWITCH(TRUE, A1 >= 90, "Grade A", A1 >= 75, "Grade B", A1 < 75,="" "grade="">
Tutaj ustawiliśmy testowane wyrażenie na TRUE, co pozwala na testowanie wielu warunków przy użyciu większej liczby operatorów niż operator równości. Jednak teraz logika wydaje się mniej zwarta i czytelna niż podstawowe polecenie SWITCH.