Excel w zadaniach. Funkcja ORAZ i LUB

Podobne dokumenty
Łączenie liczb i tekstu.

Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym

Temat: Arkusze kalkulacyjne. Program Microsoft Office Excel. Podstawy

Funkcje logiczne służą przede wszystkim do

Excel w zadaniach. Podstawowe operacje

Excel formuły i funkcje

Excel w zadaniach. Funkcja JEŻELI

MS Excel cz.1 funkcje zaawansowane

Edytor tekstu MS Word 2010 PL. Edytor tekstu MS Word 2010 PL umożliwia wykonywanie działań matematycznych.

Podstawowym zadaniem, które realizuje

Technologia Informacyjna Zajęcia 10. JEŻELI(warunek_logiczny; wartość_dla_prawdy; wartość_dla_fałszu)

MS Excel. 1. JEŻELI - funkcja służąca do testowania warunków logicznych. Składnia: JEŻELI(warunek_logiczny; wartość_dla_prawdy; wartość_dla_fałszu)

Przegląd podstawowych funkcji Excel.

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

Excel w zadaniach. Adresacja bezwzględna

=jeżeli(warunek;prawda;fałsz)

Trik 1 Identyfikator klienta generowany za pomocą formuły

Warto też w tym miejscu powiedzieć, że w C zero jest rozpoznawane jako fałsz, a wszystkie pozostałe wartości jako prawda.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Elektroenergetyki Technologie informatyczne

Funkcje wyszukiwania i adresu PODAJ.POZYCJĘ

INFORMATYKA W ZARZĄDZANIU Arkusz kalkulacyjny MS EXCEL. Ćwiczenie 5 MS EXCEL. Zmiana rodzajów odwołania podczas kolejnych naciśnięć klawisza F4

1. JEŻELI - funkcja służąca do testowania warunków logicznych. JEŻELI(warunek_logiczny; wartośd_dla_prawdy; wartośd_dla_fałszu)

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Excel Funkcje logiczne. Funkcja Jeżeli

Rozdział 8. Wykorzystanie funkcji logicznych i warunkowych do analizy danych

Moduł 2. Wykorzystanie programu Excel do zadań analitycznych

Ćwiczenie 4 MS EXCEL. JEŻELI(test_logiczny;wartość_jeżeli_prawda;wartość_jeżeli_fałsz)

Microsoft Excel 2003 profesjonalna analiza i raportowanie oraz prezentacja danych

Excel w zadaniach. Funkcje tablicowe

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz.3

Matematyka grupa Uruchom arkusz kalkulacyjny. 2. Wprowadź do arkusza kalkulacyjnego wartości znajdujące się w kolumnach A i B.

Pętle. Dodał Administrator niedziela, 14 marzec :27

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

5.5. Wybieranie informacji z bazy

Laboratorium 3. 1 Funkcje. 1.1 Teoria Składnia funkcji. Legenda: Tekst do wpisania. PODSTAWY INFORMATYKI laboratorium

Wprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2

Programowanie w języku Python. Grażyna Koba

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS

Funkcje w MS Excel. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS

W tej lekcji omówimy mechanizmy za pomocą których jest możliwe wykonywanie działań w Excelu, czyli:

Nagrywanie Makr. Na karcie Dostosowywanie Wstążki zaznaczamy kartę Deweloper.

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

Metoda Karnaugh. B A BC A

Operacje na Wielu Arkuszach

Przykład 1. (Arkusz: Sortowanie 1 )

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli.

Podręczna pomoc Microsoft Excel 2007

Funkcje bazy danych. Funkcje bazodanowe są specyficzną kategorią

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

wagi cyfry pozycje

Algebra Boole a i jej zastosowania

WYRAŻENIA ALGEBRAICZNE

Wykład III. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

Praktyczny Excel. 50 praktycznych formuł na każdą okazję

Wykład 6. Reguły inferencyjne systemu aksjomatycznego Klasycznego Rachunku Zdań

7. Nadawanie nazw Ćwiczenie 15.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

1 Układy równań liniowych

Pomorski Czarodziej 2016 Zadania. Kategoria C

SPOSÓB WYKONANIA OBLICZEŃ I FORMATOWANIA KOMÓREK

1 Podstawy c++ w pigułce.

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

Lekcja : Tablice + pętle

FUNKCJE TEKSTOWE W MS EXCEL

Przenoszenie, kopiowanie formuł

Pobierz plik z przykładem

Technologie informacyjne: Arkusz kalkulacyjny

Scenariusz lekcji. wymienić nazwy funkcji logicznych (jeżeli, licz.jeżeli); omówić funkcje, korzystając z informacji zawartych w Pomocy programu;

Wprowadzenie do formuł i funkcji

Trik 1 WyróŜnianie najlepszych wyników sprzedaŝowych

3. Wprowadź opis: kolumna A J. angielski, kolumna B J. polski. Obejrzyj animację pt. Wprowadzanie danych, aby dowiedzieć się, jak to zrobić.

for (inicjacja_warunkow_poczatkowych; wyrazenie_warunkowe; wyrazenie_zwiekszajace) { blok instrukcji; }

Przykład : =JEŻELI(A1 > A2; Wydatki bieżące są większe od przewidywanych ; Wydatki przewidywane są większe od bieżących )

Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0


Kompilator języka Basic można bezpłatnie pobrać ze strony z zakładki DOWNLOAD.

PODSTAWY OBSŁUGI ARKUSZA KALKULACYJNEGO

Dalszy ciąg rachunku zdań

Tworzenie makr warunkowych

4. Funkcje. Przykłady

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo

Wprowadzenie do MS Excel

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Dzielenie sieci na podsieci

Wyszukiwanie plików w systemie Windows

Microsoft EXCEL SOLVER

7. Pętle for. Przykłady

x 2 = a RÓWNANIA KWADRATOWE 1. Wprowadzenie do równań kwadratowych 2. Proste równania kwadratowe Równanie kwadratowe typu:

LOGIKA I TEORIA ZBIORÓW

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 9 TECHNOLOGIE INFORMACYJNE

ARKUSZ KALKULACYJNY komórka

Formatowanie warunkowe

0 + 0 = 0, = 1, = 1, = 0.

PRZYKŁADOWY TEST EGZAMINACYJNY

Podział sieci na podsieci wytłumaczenie

Word. Korespondencja seryjna

UONET+ moduł Dziennik

Transkrypt:

1 (Pobrane z slow7.pl) Wadą funkcji JEŻELI, jest to, że w swej najprostszej postaci może ona operować tylko na jednym warunku logicznym. Tak więc gdy chcemy wprowadzić więcej zmiennych należy funkcję JEŻELI zagnieździć. Rozwiązaniem problemu zagnieżdżania jest użycie funkcji ORAZ bądź LUB. W przypadku funkcji ORAZ, aby funkcja ta zwracała w wyniku wartość PRAWDA, niezbędne jest, aby każdy z ustalonych przez nas warunków, został spełniony (wszystkie warunki muszą zwrócić wartość PRAWDA). W przypadku sytuacji w której chociaż jeden z warunków zwróci wartość FAŁSZ, cała funkcja zwraca w wyniku FAŁSZ. Tak więc nazywając sprawę po imieniu funkcja ORAZ jest iloczynem (koniunkcją) warunków. Funkcja ORAZ pozwala na zastosowanie maksymalnie 30 warunków. W przypadku funkcji LUB sprawa ma się zgoła odmiennie. Aby funkcja LUB zwróciła wartość PRAWDA przynajmniej jeden z warunków musi być prawdziwy (jeden warunek musi zwrócić wartość PRAWDA). Wartość FAŁSZ zwracana jest gdy wszystkie zdefiniowane warunki zwracają wartość FAŁSZ. Funkcja LUB jest więc, sumą (alternatywą) warunków. Na tyle by mówiła teoria. Osoby, które wcześniej nie miały do czynienia z opisywanymi funkcjami, tak sobie myślę, że nie za bardzo będą miały do końca pojęcie o co naprawdę chodzi. Tak więc, żeby rozwiać wszelkie wątpliwości przejdźmy to małego (leczy wymownego) przykładu. Wszystkie przedstawione przykłady w tym wpisie można pobrać tu: zadania funkcja ORAZ i LUB Na początek przykład zastosowania funkcji ORAZ. Naszym zadaniem jest sprawdzenie czy w dwóch komórkach została wpisana wartość 1. Jeżeli któryś z warunków nie zostanie spełniony (w komórce będzie wpisana inna wartość niż 1) ma zostać zwrócona wartość FAŁSZ a w przypadku w którym w dwóch sprawdzanych komórkach pojawi się wartość 1 ma być zwrócona wartość PRAWDA. Jak widzimy poniżej mamy cztery możliwe sytuacje i rzeczywiście wartość PRAWDA pojawia się w jednym przypadku, natomiast w pozostałych wartość FAŁSZ.

2 (Pobrane z slow7.pl) Do rozwiązania zadania użyliśmy funkcji ORAZ a zbudowana formuła ma postać: =ORAZ(C3=1;D3=1). Formuła ta sprawdza czy w komórce C3 oraz komórce D3 jest wpisana wartość 1 (oczywiście w pozostałych rozwiązaniach zmieniają się odwołania do sprawdzanych komórek). Rozbijając uzyskane rozwiązania na czynniki pierwsze otrzymujemy: Sytuacja pierwsza: rozwiązaniem jest wartość FAŁSZ ponieważ zarówno w komórce C3 jak i D3 nie ma wpisanej sprawdzanej wartości czyli 1, oba sprawdzane warunki zwracają wartość FAŁSZ tak więc cała funkcja ORAZ zwraca wartość FAŁSZ. Sytuacja druga: rozwiązaniem jest wartość FAŁSZ ponieważ w komórce D4 brak jest wartości 1, tak więc warunek ten zwraca wartość FAŁSZ, kolejny warunek jest spełniony i zwraca wartość PRAWDA (w komórce C4 znajduje się jedynka), tak więc otrzymujemy FAŁSZ i PRAWDA co w konsekwencji daje nam wynik FAŁSZ. Łatwiej to sobie wyobrazić gdy do wartości FAŁSZ przypiszemy 0 natomiast do wartości PRAWDA przypiszemy 1. Z opisu powyżej wiesz już Czytelniku, że funkcja ORAZ jest iloczynem tak więc otrzymujemy działanie: PRAWDA (komórka C4) razy FAŁSZ (komórka D4) co po podstawieniu wartości daje nam: 1 razy 0 czyli w ogólnym rozrachunku 0 (FAŁSZ). Sytuacja trzecia: rozwiązaniem jest wartość FAŁSZ ponieważ w komórce C5 brak jest wartości 1, tak więc warunek ten zwraca wartość FAŁSZ, kolejny warunek jest spełniony i zwraca wartość PRAWDA (w komórce D5 znajduje się jedynka), tak więc otrzymujemy FAŁSZ i PRAWDA co w konsekwencji daje nam wynik FAŁSZ. Zestawiając to z analogią opisaną powyżej: otrzymujemy działanie: FAŁSZ (komórka C5) razy PRAWDA (komórka D5) co po podstawieniu wartości daje nam: 0 razy 1 czyli w ogólnym rozrachunku 0 (FAŁSZ). Sytuacja czwarta: rozwiązaniem jest wartość PRAWDA ponieważ zarówno w komórce C6 jak i D6 znajduje się sprawdzana wartość (wpisana jest wartość 1), oba sprawdzane warunki zwracają wartość PRAWDA tak więc cała funkcja ORAZ zwraca wartość PRAWDA. Po podstawieniu otrzymujemy działanie: 1 (PRAWDA) razy 1 (PRAWDA) czyli wynikiem jest 1 (PRAWDA). Tak więc myślę, że przykład dobitnie ukazuje sposób działania funkcji ORAZ. We wstępie zaznaczyłem, że funkcję ORAZ można połączyć z funkcją JEŻELI, więc zróbmy to i zmodyfikujmy nasz przykład. Zadanie polega na tym: by zamiast wartości PRAWDA i FAŁSZ pojawił

3 (Pobrane z slow7.pl) się zdefiniowany przez nas komunikat: i tak dla wartości PRAWDA komunikat: WARUNKI ZOSTAŁY SPEŁNIONE natomiast dla wartości FAŁSZ - komunikat: WARUNKI NIE ZOSTAŁY SPEŁNIONE Postawione przed nami zadanie rozwiążemy za pomocą formuły: =JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";"WARUNKI NIE ZOSTAŁY SPEŁNIONE") Funkcja ta działa w ten sposób, że gdy warunek określony w funkcji JEŻELI a zdefiniowany za pomocą funkcji ORAZ jest spełniony (czyli PRAWDA) zostaje wykonana WARTOŚĆ_JEŻELI_PRAWDA (wypisanie komunikatu: WARUNKI ZOSTAŁY SPEŁNIONE), jeżeli zaś zwracaną wartością jest FAŁSZ funkcja JEŻELI przechodzi do wykonania WARTOŚĆ_JEŻELI_FAŁSZ (wypisanie komunikatu: WARUNKI NIE ZOSTAŁY SPEŁNIONE). Pójdźmy dalej i nasze przykładowe zadanie jeszcze bardziej skomplikujmy i zbudujmy taką formułę, która oprócz wypisania czy warunek został spełniony czy nie, umieści jeszcze informację o tym w której komórce pojawiło się 0 (FAŁSZ). Formuła, która postawione przed nami zadanie wykona, mogłaby mieć następującą składnię: JEŻELI(ORAZ(C3=1;D3=1);"WARUNKI ZOSTAŁY SPEŁNIONE";JEŻELI(ORAZ(C3=0;D3=0);"WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0";JEŻELI(C3=0;"WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0";"WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0"))) chociaż oczywiście zadanie te można by rozwiązać na kilka innych sposobów. Efekt działania funkcji widzimy na rysunku poniżej.

4 (Pobrane z slow7.pl) Formuła ta jest już troszkę skomplikowana i początkującemu zrozumienie jej działania może (choć wcale nie musi) przysporzyć nieco problemu. Dlatego myślę, że lepszym rozwiązaniem jest przedstawienie tej formuły za pomocą schematu blokowego (teraz jak na dłoni widać jak formuła działa). Pierwsza funkcja JEŻELI sprawdza warunek: ORAZ(C3=1;D3=1) jeśli warunek jest prawdziwy zostaje wypisany komunikat: WARUNKI ZOSTAŁY SPEŁNIONE. W przypadku zwrócenia przez funkcję ORAZ wartości FAŁSZ funkcja JEŻELI przechodzi do wykonania WARTOŚĆ_JEŻELI_FAŁSZ czyli w naszym przypadku zostaje wykonana kolejna funkcja JEŻELI (druga) w której to sprawdzany jest warunek: ORAZ(C3=0;D3=0) Gdy warunek jest prawdą zostaje wykonane wyświetlenie komunikatu: WARUNKI NIE ZOSTAŁY SPEŁNIONE W OBU KOMÓRKACH 0 w przeciwnym przypadku następuje przejście do następnego warunku (trzecia funkcja JEŻELI). W funkcji tej sprawdzanym warunkiem jest zapis: C3=0 Jeżeli komórka C3 równa

5 (Pobrane z slow7.pl) się 0, funkcja JEŻELI wykonuje WARTOŚĆ_JEŻELI_PRAWDA czyli wypisany jest komunikat: WARUNKI NIE ZOSTAŁY SPEŁNIONE PIERWSZA KOMÓRKA 0 Ostatnią możliwością jest pojawienie się wartości 0 w drugiej komórce, tak więc nie pozostało nam nic innego jak ostatni komunikat: WARUNKI NIE ZOSTAŁY SPEŁNIONE DRUGA KOMÓRKA 0 umieścić w sekcji WARTOŚĆ_JEŻELI_FAŁSZ gdyż jest to ostatnia możliwość, wykonywana tylko w przypadku nie spełnienia wszystkich wcześniejszych warunków. Funkcja ORAZ świetnie nadaje się gdy mamy do czynienia z przedziałami. Ponieważ znacznie ułatwia nam tworzenie formuł, tworzone formuły są znacznie czytelniejsze. No to mały przykład. Przypuśćmy, że jesteśmy menadżerem, którego zadaniem jest wyliczenie prowizji naszym sprzedawcą w zależności od wartości sprzedanego towaru. Prowizję będziemy wyliczali według poniższych zasad: 0 1999 zł - 5,0% 2000 zł 4999 zł - 10,0% 5000 zł 9999 zł - 16,5% powyżej 10 000 zł - 25,0% Przykładowy arkusz natomiast został przedstawiony na rysunku poniżej. Wyliczenie wartości prowizji zrealizujemy za pomocą formuły: =JEŻELI(ORAZ(D4>=0;D4<=1999,99);D4*0,05;JEŻELI(ORAZ(D4>=2000;D4<=4999,99);D4 *0,1;JEŻELI(ORAZ(D4>=2000;D4<=9999,99);D4*0,165;JEŻELI(D4>=10000;D4*0,25;0))))

6 (Pobrane z slow7.pl) W formule powyżej każda z funkcji ORAZ została użyta do ustalenia przedziału, natomiast funkcja JEŻELI w zależności od zwróconej wartości PRAWDA bądź FAŁSZ wykonuje wyliczenie wartości prowizji bądź przejścia do sprawdzenia kolejnego warunku. Tak więc myślę, że przedstawione zadania dobrze dokumentują sposób działania funkcji ORAZ i nie ma co dalej rozwodzić się nad nią (choć jeszcze do niej wrócimy) i czas by przyjrzeć się funkcji LUB. Zaczniemy od tego samego zadania od którego rozpoczęliśmy omawianie funkcji ORAZ lecz funkcję tą zastąpimy funkcją LUB. Podobnie jak w zadaniu z funkcją ORAZ sprawdzamy czy w komórkach (przynajmniej jednej) pojawi się wartość 1. Jak widać na rysunku poniżej, wartość PRAWDA pojawiła się w wszystkich przypadkach w których to w sprawdzanych komórkach została umieszczona cyfra 1. Przy opisywaniu funkcji LUB użyłem stwierdzenia, że funkcja ta jest sumą warunków. By zrozumieć czemu w wyniku działania funkcji zwracana jest wartość PRAWDA lub FAŁSZ można cząstkowym,

7 (Pobrane z slow7.pl) sprawdzanym warunkom w zależności od zwróconego wyniku przypisać wartość 1 lub 0. Jeżeli suma cząstkowych warunków wyniesie 1 bądź więcej zostanie zwrócona wartość PRAWDA, natomiast gdy suma ta będzie równała się 0 wartością zwracaną będzie FAŁSZ. Sytuacja pierwsza: sprawdzany jest warunek: C3=1, warunek ten jest FAŁSZEM czyli 0, kolejny sprawdzany warunek (D3=1) również zwraca FAŁSZ (ponieważ 0 nie równa się 1) tak więc znów mamy 0. Suma warunków wynosi: 0 + 0 (FAŁSZ + FAŁSZ) co w konsekwencji daje nam 0 czyli wynikiem działania funkcji jest FAŁSZ. Sytuacja druga: pierwszy warunek jest PRAWDĄ (wpisana wartość 1) czyli mamy 1, natomiast drugi warunek jest FAŁSZEM (wpisana wartość 0) czyli mamy 0. Podsumowując suma składowych warunków wynosi: 1 (1+0) Gdy suma alternatyw wynosi 1 cała formuła zwraca wartość PRAWDA. Sytuacja trzecia: przypadek ten jest odwróceniem sytuacji drugiej, suma częściowych warunków wynosi również 1, ponieważ pierwszy warunek zwraca FAŁSZ (0), natomiast drugi warunek zwraca PRAWDA (1), tak więc suma wynosi 1 (0+1). Sytuacja czwarta: oba składowe warunki zwracają wartość PRAWDA tak więc wynikiem funkcji jest PRAWDA (1+1=2). Gdybyśmy chcieli uzyskać komunikaty podobne do tych jak w przypadku funkcji ORAZ oczywiście należałoby użyć funkcji JEŻELI. Przy używaniu funkcji ORAZ i LUB (i tak samo gdy wykorzystujemy funkcję JEŻELI) należy mieć na uwadze, że gdy sprawdzaną wartością jest słowo w warunku należy użyć cudzysłowów. No to przykład. Jesteśmy osobą, która prowadzi przesłuchania kandydatów/kandydatek na stanowisko np. kierownik sklepu. Wymagania są następujące: znajomość języka angielskiego, doświadczenie trzy lata bądź więcej, znajomość pakietu MS Office bądź LibreOffice, wykształcenie wyższe marketing i zarządzanie. Wymagania te są konieczne by kandydacie przeszli do kolejnego etapu. By ułatwić sobie zadanie został utworzony arkusz, który ma pomóc w doborze kandydatów. Do rozwiązania zadania została użyta następująca formuła: =JEŻELI(ORAZ(D5="tak";E5>=3;LUB(F5="office";F5="libre");G5="tak");"dodatkowa rozmowa";"odpada") Formuła ta przy użyciu funkcji ORAZ i LUB (użyte w warunku funkcji JEŻELI) sprawdza poszczególne warunki częściowe natomiast funkcja JEŻELI w zależności od zwróconej wartości wyświetla odpowiedni komunikat. Komunikat: dodatkowa rozmowa zostanie zwrócono gdy: w

8 (Pobrane z slow7.pl) kolumnie j. angielski pojawi się słowo tak; w kolumnie doświadczenie wpisana wartość będzie wynosić 3 lub więcej; w kolumnie znajomość programów pojawi się słowo office bądź libre; w kolumnie wykształcenie słowo tak. W przeciwnym przypadku jest wyświetlany komunikat: odpada. Jak można zauważyć wszystkie sprawdzane ciągi tekstowe zostały umieszczone w cudzysłowie a także wielkość użytych liter nie ma znaczenia. Funkcję LUB (wraz w połączeniu z innymi funkcjami) możemy również wykorzystać w takim oto zadaniu. Przypuśćmy, że mamy listę imion i nazwisk zaimportowaną z innego programu ale niestety przed każdym imieniem mamy dodany zwrot grzecznościowy Pan bądź Pani. Naszym celem jest usunięcie tego zwrotu tak aby pozostało nam samo imię i nazwisko. Zadanie to możemy zrealizować za pomocą następującej formuły: =JEŻELI(LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani");PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7));E7) Tak wiem, pewnie się zastanawiasz jak do diabła ta formuła działa. Więc nie pozostaje nam nic innego jak formułę tą rozbić na czynniki pierwsze. W pierwszej kolejności została użyta funkcja JEŻELI, której zadaniem jest wykonanie warunku. W warunku funkcji JEŻELI znajduje się wpis: LUB(LEWY(E7;3)="Pan";LEWY(E7;4)="Pani") zadaniem tej części kodu jest sprawdzenie czy w komórce E7 znajduje się wyrażenie Pan bądź Pani. Sprawdzenie następuje z wykorzystaniem funkcji LEWY. Funkcja ta zwraca skrajne lewe znaki z wartości tekstowej. Tak więc wyrażenie LEWY(E7;3)="Pan" powoduje pobranie trzech pierwszych znaków z lewej strony wyrażenia znajdującego się w komórce E7 i sprawdzenie czy pobrane znaki to słowo Pan. Analogicznie działa wyrażenie LEWY(E7;4)="Pani" lecz tu pobierane są cztery znaki i sprawdzanym słowem jest Pani. Gdy słowo Pan bądź Pani pojawi się w sprawdzanej komórce warunek jest spełniony. W sekcji WARTOŚĆ_JEŻELI_PRAWDA znajduje się wpis: PRAWY(E7;DŁ(E7)-ZNAJDŹ(" ";E7)) Do zbudowania wyrażenia zostały użyte funkcje PRAWY, ZNAJDŹ oraz DŁ. Zadaniem pierwszej funkcji (PRAWY) jest pobranie znaków z komórki E7 przy czym ilość pobieranych znaków jest zależna od wykonania zapisu: DŁ(E7)-ZNAJDŹ(" ";E7) Funkcja DŁ zwraca nam długość ciągu znaków znajdujących się w komórce E7 (czyli 16 - spacje też są wliczane), natomiast funkcja

9 (Pobrane z slow7.pl) ZNAJDŹ w danej komórce szuka wystąpienia znaku spacja (zapis " " - do pierwszego wystąpienia), po zastosowaniu formuły zwracana jest wartość 4 (ponieważ spacja jest czwartym znakiem) Wykonywane jest odejmowanie, czyli w naszym przypadku: 16-4=12 Wartość 12 jest przekazywana do funkcji PRAWY, tak więc funkcja ta od prawej strony komórki E7 pobiera 12 znaków, tym samym zwracając nam ciąg: Jan Kowalski. Jeżeli warunek nie jest spełniony formuła zwraca zawartość komórki E7. Omówione funkcje LEWY, PRAWY, ZNAJDŹ oraz DŁ można użyć w scenariuszu w którym to chcemy w osobnych komórkach mieć imiona i nazwiska.

10 (Pobrane z slow7.pl) Aby otrzymać imiona użyj formuły: =LEWY(D7;ZNAJDŹ(" ";D7)-1) natomiast by uzyskać nazwiska: =PRAWY(D15;DŁ(D15)-ZNAJDŹ(" ";D15)) Kolejnym ciekawym zadaniem z zastosowaniem funkcji LUB jest zadanie w którym to musimy wyznaczyć dni weekendowe. Zadanie polega na wskazaniu, która z podanych dat to sobota i niedziela.

11 (Pobrane z slow7.pl) Jak widać powyżej przy datach, które przypadają w sobotę bądź niedzielę pojawia się zapis PRAWDA. Zadanie to zostało zrealizowane za pomocą formuły: =LUB(DZIEŃ.TYG(G6)=7;DZIEŃ.TYG(G6)=1) Jak widać po zapisie formuły w rozwiązaniu problemu dodatkowo została użyta funkcja DZIEŃ.TYG Zadaniem tej funkcji jest zwrócenie wartości, która odpowiada numerowi dnia tygodnia. Funkcja zwraca wartości od 1 do 7 - wartość 1 to niedziela, wartość 2 poniedziałek, wartość 3 to wtorek itd. Tak więc nasze zadanie sprowadza się do wyszukania tych wartości, które odpowiadają sobocie (wartość 7) i niedzieli (wartość 1). Oczywiście w ten sam sposób można wyszukać inne dni tygodnia, poprzez modyfikację wartości w funkcji DZIEŃ.TYG Gdyby funkcja nie zadziałała sprawdź czy komórka zawierające datę została sformatowana jako DATA. Aby zakończyć rozważania na temat funkcji logicznych to jeszcze jedno zadanie z wykorzystaniem funkcji LUB i ORAZ (takie podsumowanie). Celem zadania jest stworzenie formuły, która będzie przyznawała zniżkę na bilety miesięczne przy następujących założeniach: Zniżka przysługuje osobom, które spełniają następujące warunki: a) są na emeryturze lub są studentami (niezależnie od dochodu) - zniżka 7% b) ich dochód miesięczny na osobę nie przekracza bądź równa się 600 zł - zniżka 12% Jeżeli osoba spełnia zarówno kryteria z punktu a oraz b przyznaj większą zniżkę. W przypadku braku zniżki niech się pojawi stosowna informacja.

12 (Pobrane z slow7.pl) Zadanie to rozwiąże nam następująca formuła: =JEŻELI(G10<=600;12%;JEŻELI(G10>600;JEŻELI(LUB(E10="tak";F10="tak");7%;"brak");" brak")) Zaczynamy od funkcji JEŻELI ponieważ zadanie wymaga od nas wypisanie odpowiedniego komunikatu w zależności od spełnienia danych warunków. Zaczynamy od warunku: G10<=600 ponieważ nijako jest to warunek nadrzędny, tylko po jego spełnieniu jest możliwość otrzymania 12% zniżki. Warunek ten dostarcza nam jedno z rozwiązań. Spełnienie go (kwota od 0 do 600zł) spowoduje przyznanie 12% zniżki. Zostały nam do rozważenia przypadki (3 rozwiązania) w których to: dochód jest większy od 600zł i osoba jest na emeryturze bądź studentem (zniżka 7%) i rozwiązanie w którym to dochód przekracza 600zł ale dana osoba nie należy do żadnej z zdefiniowanych grup (brak zniżki). Ponieważ tak naprawdę w przypadku osoby przekraczającej 600zł i będącej emerytem lub studentem otrzymujemy jedno rozwiązanie, to aż prosi się by warunek ten połączyć ze sobą. Łączenie osiągniemy wykorzystując funkcję LUB. Ponieważ występuje tu rozgraniczenie pomiędzy osobami, których dochód przekracza 600zł i przynależnością do danej grupy musimy ponownie użyć funkcji JEŻELI. Gdy warunek zdefiniowany za pomocą funkcji LUB okaże się PRAWDĄ zostanie przyznana 7% zniżka w przeciwnym wypadku osoba nie otrzymuje rabatu. Gdyby ta użyta funkcja w dalszym ciągu była nie jasna, to wszelkie wątpliwości rozwieje schemat poniżej.

13 (Pobrane z slow7.pl) Wnikliwy czytelnik na pewno zauważy, że jeden z podanych argumentów nigdy nie zostanie spełniony. A mowa tu o zapisie brak zapisanym w WARTOŚĆ_JEŻELI_FAŁSZ w drugiej funkcji JEŻELI. Dzieje się tak ponieważ użyte przedziały: G10<=600 oraz G10>600 wyczerpują wszystkie możliwe rozwiązania, jeśli liczba nie będzie mniejsza bądź równa 600 to musi być większa od 600. Tak więc we wszystkich przypadkach będzie wykonana WARTOŚĆ_JEŻELI_PRAWDA (dalej mowa o drugiej funkcji JEŻELI). Czy można by było ten sam rezultat osiągnąć za pomocą innej funkcji. Oczywiście, że tak. Formuła, która rozwiązuje postawione przed nami zadanie może wyglądać następująco: =JEŻELI(G10<=600;12%;JEŻELI(ORAZ(G10>600;LUB(E10="tak";F10="tak"));7%;"brak")) W formule tej wykorzystano fakt, że gdy liczba nie jest mniejsza bądź równa 600 to musi być większa od 600. Dlatego w zapisie formuły znalazła się funkcja ORAZ, a fakt ten odzwierciedla zapis G10>600 stanowiący pierwszy argument funkcji ORAZ. Drugim argumentem jest zapis LUB(E10="tak";F10="tak"), który jest PRAWDĄ w przypadku przynależności danej osoby do jednej z dwóch uprzywilejowanych grup. Użyta funkcja ORAZ zwróci nam PRAWDĘ gdy nie zostanie spełniony pierwszy argument pierwszej funkcji JEŻELI (G10<=600) i równocześnie osoba będzie studentem bądź emerytem. Po spełnieniu tych warunków zostanie zwrócony nam komunikat o 7% zniżce gdyż cała funkcja ORAZ znajduje się w WARTOŚĆ_JEŻELI_PRAWDA drugiej funkcji JEŻELI. Gdy zaś osoba nie będzie znajdować się w danej grupie, funkcja ORAZ zwróci nam FAŁSZ i zostanie wykonane polecenie wyświetlenia zapisu brak. I na koniec schemat blokowy, który podsumowuje użytą formułę.

14 (Pobrane z slow7.pl) I na tym chciałbym zakończyć, myślę że po samodzielnym wykonaniu zadań funkcja ORAZ i LUB przed Tobą czytelniku nie będzie miała żadnych tajemnic.