Jak korzystać z instrukcji IF w programie Microsoft Excel

Jak korzystać z instrukcji IF w programie Microsoft Excel

Wszyscy wiedzą, jak wszechstronna jest instrukcja IF w programie skryptowym, ale czy wiesz, że możesz użyć tej samej logiki w komórce w programie Excel?





Podstawowa definicja instrukcji IF w programie polega na tym, że pozwala ona na wypisanie czegoś konkretnego na podstawie wyników kilku danych wejściowych. Możesz wykonać zupełnie inne obliczenia na podstawie wyników innych obliczeń. Możesz wykonać formatowanie warunkowe. Możesz nawet oprzeć swoje wyniki na wyszukiwaniu ciągów w komórkach wejściowych.





Jeśli brzmi to skomplikowanie, nie martw się. Przyjrzyjmy się kilku kreatywnym sposobom używania instrukcji IF w programie Excel.





Co to jest instrukcja IF w programie Excel?

Kiedy większość ludzi myśli o użyciu instrukcji IF w programie Excel, myślą o VBA. Dzieje się tak, ponieważ instrukcja IF jest zwykle logiką używaną w świecie programowania. Możesz jednak użyć tej samej logiki programowania bezpośrednio w samej komórce arkusza kalkulacyjnego.

Kiedy wpiszesz „= JEŻELI (” w komórce, zobaczysz, jak powinna wyglądać składnia instrukcji JEŻELI, aby działać poprawnie. Podstawowym wymaganiem jest po prostu „test logiczny”. Domyślnie dane wyjściowe do komórki będą być TRUE lub FALSE, ale możesz to dostosować, dołączając dodatkowe parametry do funkcji.



Jak działa podstawowa funkcja IF

Najpierw przyjrzyjmy się podstawowej funkcji JEŻELI. W powyższym przykładowym arkuszu kalkulacyjnym mam cztery czynności, które rejestruję, związane z moim samochodem. Odnotowuję datę, kiedy nastąpi dowolne z czterech zdarzeń: wymiana oleju, naprawa samochodu, rejestracja lub odnowienie ubezpieczenia.

Załóżmy, że jeśli kolumna „Naprawione” zawiera „TAK”, to chcę, aby typ zdarzenia miał „NAPRAWA”. W przeciwnym razie powinno być „NIE NAPRAWIONE”. Logika tej instrukcji IF jest bardzo prosta:





=IF(C2='YES','Repair','Non-Repair')

Wypełnienie całej kolumny tą formułą zwraca następujące wyniki:

To przydatna logika, ale w tym konkretnym przypadku nie ma to większego sensu. Wystarczy spojrzeć na kolumnę „Naprawiony”, aby określić, czy ta data dotyczyła naprawy.





Przyjrzyjmy się więc niektórym bardziej zaawansowanym funkcjom IF, aby zobaczyć, czy możemy uczynić tę kolumnę nieco bardziej użyteczną.

Oświadczenia AND i IF

Tak jak w zwykłym programie, czasami aby zbadać dwa lub trzy warunki, które są od siebie zależne, trzeba użyć logiki AND. To samo dotyczy tutaj.

Zdefiniujmy dwa nowe typy zdarzeń: Planowane lub Nieplanowane.

W tym przykładzie skupimy się tylko na Wymiana oleju kolumna. Wiem, że zazwyczaj planuję wymianę oleju na drugi dzień każdego miesiąca. Każda wymiana oleju, która nie odbyła się drugiego dnia miesiąca, była nieplanowaną wymianą oleju.

Aby je zidentyfikować, musimy użyć logiki AND w następujący sposób:

=IF(AND(DAY(A2)=2,B2='YES'),'Planned','Unplanned')

Wyniki wyglądają tak:

Działa to świetnie, ale jak widać, jest niewielka logiczna wada. Służy do pokazywania, kiedy wymiany oleju następują w oczekiwanych terminach – te pojawiają się jako „planowane”. Ale gdy kolumna Wymiana oleju jest pusta, dane wyjściowe również powinny być puste. W takich przypadkach zwracanie wyniku nie ma sensu, ponieważ nigdy nie miała miejsca wymiana oleju.

Aby to osiągnąć, przejdziemy do następnej lekcji dotyczącej zaawansowanej funkcji JEŻELI: zagnieżdżonych instrukcji JEŻELI.

Zagnieżdżone instrukcje IF

Opierając się na ostatniej funkcji, będziesz musiał dodać kolejną instrukcję IF wewnątrz oryginalnej instrukcji IF. Powinno to zwrócić puste, jeśli oryginalna komórka wymiany oleju jest pusta.

najlepsza aplikacja do oglądania darmowych filmów

Oto jak wygląda to oświadczenie:

=IF(ISBLANK(B2),'',IF(AND(DAY(A2)=2,B2='YES'),'Planned','Unplanned'))

Teraz stwierdzenie zaczyna wyglądać na nieco skomplikowane, ale tak naprawdę nie jest, jeśli przyjrzysz się uważnie. Pierwsza instrukcja IF sprawdza, czy komórka w kolumnie B jest pusta. Jeśli tak, zwraca spację lub „”.

Jeśli nie jest pusty, wstawiasz tę samą instrukcję IF, której użyliśmy w powyższej sekcji, do części False pierwszej instrukcji IF. W ten sposób sprawdzasz i zapisujesz wyniki dotyczące daty wymiany oleju tylko wtedy, gdy miała miejsce rzeczywista wymiana oleju. W przeciwnym razie komórka jest pusta.

Jak możesz sobie wyobrazić, może to być strasznie skomplikowane. Więc kiedy zagnieżdżasz instrukcje IF, zawsze rób to krok po kroku. Przetestuj logikę poszczególnych instrukcji IF przed rozpoczęciem ich zagnieżdżania. Ponieważ po zagnieżdżeniu kilku z nich rozwiązywanie problemów może stać się prawdziwym koszmarem.

czy mogę podłączyć airpody do xbox?

Oświadczenia LUB

Teraz trochę podkręcimy logikę. Powiedzmy, że tym razem to, co chcę zrobić, to zwrócić „Roczną konserwację”, jeśli wymiana oleju lub naprawa połączona z rejestracją lub ubezpieczeniem jest wykonywana w tym samym czasie, ale tylko „Rutynowa konserwacja”, jeśli dokonano tylko wymiany oleju. Brzmi to skomplikowanie, ale z odpowiednią logiką instrukcji IF nie jest to wcale trudne.

Ten rodzaj logiki wymaga połączenia zarówno zagnieżdżonej instrukcji IF, jak i kilku instrukcji OR. Oto jak będzie wyglądać to oświadczenie:

=IF(OR(B2='YES',C2='YES'),IF(OR(D2='YES',E2='YES'),'Yearly Maintenance','Routine Maintenance'),'')

Oto jak wyglądają wyniki:

Godny uwagi jest rodzaj złożonej analizy, którą można przeprowadzić, łącząc różne operatory logiczne w zagnieżdżonych instrukcjach JEŻELI.

Wyniki oparte na zakresach wartości

Często bardzo przydatne jest przekonwertowanie zakresów wartości na jakiś rodzaj wyniku tekstowego. Może to być tak proste, jak zamiana temperatury z 0 do 50 stopni F na „zimną”, 50 na 80 na „ciepłą”, a wszystko powyżej 80 na „gorącą”.

Nauczyciele prawdopodobnie najbardziej potrzebują tej logiki ze względu na wyniki liter. W poniższym przykładzie zbadamy, jak przekonwertować wartość liczbową na tekst na podstawie właśnie takiego zakresu.

Załóżmy, że nauczyciel używa następujących zakresów, aby określić ocenę literową:

  • 90 do 100 to A
  • 80 do 90 to B
  • 70 do 80 to C
  • 60 do 70 to D
  • Poniżej 60 lat to F

Oto jak będzie wyglądać tego rodzaju instrukcja z wieloma zagnieżdżonymi funkcjami JEŻELI:

=IF(B2>89,'A',IF(B2>79,'B',IF(B2>69,'C',IF(B2>59,'D','F'))))

Każde gniazdo to kolejna seria w serii. Musisz tylko bardzo uważać, aby zamknąć instrukcję odpowiednią liczbą nawiasów, w przeciwnym razie funkcja nie będzie działać poprawnie.

Oto jak wygląda wynikowy arkusz:

Jak widać, pozwala to na reprezentowanie dowolnej liczby w postaci ciągu opisowego. Zaktualizuje się również automatycznie, jeśli wartość liczbowa na arkuszu ulegnie zmianie.

Korzystanie z logiki IF-THEN jest potężne

Jako programista znasz już moc instrukcji IF. Pozwalają zautomatyzować analizę logiczną w dowolne obliczenia. Jest to bardzo przydatne w języku skryptowym, ale jak widać, działa równie dobrze w komórkach arkusza kalkulacyjnego Excel.

Przy odrobinie kreatywności możesz coś zrobić bardzo imponujące rzeczy z logiką instrukcji IF i innymi formułami w programie Excel.

Jaką unikalną logikę wymyśliłeś za pomocą instrukcji IF w programie Excel? Podziel się własnymi pomysłami i wskazówkami w sekcji komentarzy poniżej!

Udział Udział Ćwierkać E-mail 5 wskazówek, jak doładować swoje maszyny VirtualBox Linux

Masz dość słabej wydajności oferowanej przez maszyny wirtualne? Oto, co powinieneś zrobić, aby zwiększyć wydajność VirtualBox.

Czytaj dalej
Powiązane tematy
  • Programowanie
  • Arkusz
  • Microsoft Excel
O autorze Ryan Dube(942 opublikowane artykuły)

Ryan posiada tytuł licencjata w dziedzinie elektrotechniki. Pracował 13 lat w inżynierii automatyzacji, 5 lat w IT, a teraz jest inżynierem aplikacji. Były redaktor zarządzający MakeUseOf, przemawiał na krajowych konferencjach na temat wizualizacji danych i występował w krajowej telewizji i radiu.

Więcej od Ryana Dube

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować