Prawda i fałsz – funkcje logiczne Excela
Fałsz i prawda same z siebie niewiele dają, a ich użycie ma sens, jeśli są argumentami innych formuł. Potoczne powiedzenie, że Excel to „logika i matematyka” ma w sobie sporo prawdy, gdyż już w „pierwszej” na polskim rynku wersji Excela (Excel 3.0 1990 r.) istniała grupa funkcji logicznych. I tak, z niewielkimi zmianami jest do dziś.
Podstawowe funkcje logiczne Excela to: PRAWDA() – „logiczne jeden”, FAŁSZ() – „logiczne zero”, NIE(...) – zaprzeczenie, LUB(…;….;.) – alternatywa, ORAZ(…;….;.) – koniunkcja, JEŻELI(…;….;…) – implikacja.
Jak pamiętamy z logiki, zaprzeczenie prawdy daje fałsz, zaprzeczenie fałszu – prawdę. Alternatywa zawsze jest prawdziwa, a fałszywa tylko wtedy, gdy wszystkie argumenty są fałszywe.
Natomiast koniunkcja zawsze jest fałszywa – prawdziwa tylko wtedy gdy wszystkie argumenty są prawdziwe. Alternatywy i koniunkcji używamy często w zaawansowanym formatowaniu warunkowym czy też np. w funkcjach Baz Danych.
Często w obliczeniach musimy ustawiać różnego rodzaju warunki, stąd najczęściej wykorzystywaną w tej grupie jest implikacja. Np. jeżeli termin płatności (komórka A1) minął, wpisz 1, inaczej 0 -> JEŻELI(DZIŚ()-A1>0;1;0). Po wypełnieniu formuły na kolejne rekordy wszystkich dłużników oznaczymy jedynkami w arkuszu. Stosując formatowanie warunkowe, mamy graficzną przejrzystość wyników. Funkcja JEŻELI sprawdza w zasadzie dwa warunki – PRAWDA; FAŁSZ. Gdy rozwiązujemy przypadki bardziej złożone, składamy (zagnieżdżamy) funkcję JEŻELI wielokrotnie.
W jeszcze bardziej złożonych przypadkach, kilkunastu-kilkudziesięciu porównań wygodniej jest wykorzystać moduł MS Visual Basic i zaprogramować własną funkcję. Przykładowo - cenę usługi warunkujemy kosztem części zamiennych. Z kodu funkcji łatwo zauważyć zależności:
Function cena_usługi(koszt_części)
If koszt_części > 1000 Then
cena_usługi = 5
ElseIf koszt_części > 500 Then
cena_usługi = 50
ElseIf koszt_części > 100 Then
cena_usługi = 150
Else
cena_usługi = 250
End If
End Function
Złożona funkcja JEŻELI miałaby w tym przykładzie postać:
=JEŻELI(A10>1000;5;JEŻELI(A10>500;50;JEŻELI(A10>100;150;250)))
W grupie funkcji logicznych są też funkcje „nielogiczne”-> JEŻELI.BŁĄD(…;…),JEŻELI.ND(…;…).
Nazwałbym je funkcjami „kosmetycznymi”, po prostu jeśli funkcja odpowiednio zwraca znak błędu, to można w jego miejsce wstawić własny komunikat czy też wartość liczbową.
Tradycyjnie zachęcam do korzystania z omawianej kategorii funkcji Excela, a także zapraszam do BDO na warsztaty i szkolenia z Excela.
Janusz Gach
wykładowca, trener z wieloletnim stażem. Prowadzi szkolenia dla BDO. Autor wielu programów szkoleniowych dotyczących wykorzystania programu Excel, informatyki we wspomaganiu zarządzania przepływem informacji w nowoczesnym przedsiębiorstwie. Specjalizuje się m.in. w zastosowaniach arkuszy kalkulacyjnych, a także w analizach związanych z potrzebami biznesu.
Zapraszamy na najblizsze warsztaty:
Newsletter BDO
Aktualności
- Egzekucja administracyjna z wynagrodzenia za pracę
- Klika słów o urlopie na żądanie
- Cyfryzacja dokumentów księgowych
- Nowa definicja budynku i budowli
- Limit płatności gotówkowych z wątpliwościami
- Amortyzacja łodzi sezonowej
- Ochrona sygnalistów już obowiązuje
- Podatek od budowli wchodzącej w skład przedsiębiorstwa
- Pojęcie zagranicznej jednostki kontrolowanej
- Tajemnica zawodowa i raportowanie MDR