Funkcja MIN() zwraca najmniejszą wartość z podanego zakresu. Nieco bardziej złożonej funkcji potrzebowałbyś nie tyle do wyznaczenia samego minimum, ile wiersza, w którym się ono znajduje. Niestety, nie poradzisz sobie bez formuł tablicowych, w sytuacji gdy wartości najmniejszych jest kilka, a Ty poszukujesz jej pierwszego wystąpienia.
Załóżmy, że chcesz przeanalizować stan swoich finansów biorąc pod uwagę kieszonkowe i zarobione w weekendy pieniądze. W arkuszu przedstawiającym twoją płynność finansową (plik z danymi znajduje się pod filmem) musisz zapisać formułę, która w komórce D1 wyświetli datę odpowiadającą wartości najmniejszej w kolumnie Saldo. Ponadto w sytuacji, gdyby taka sama wartość minimalna wystąpiła wielokrotnie, zwrócona powinna być data z najmniejszym numerem wiersza, czyli pierwsze wystąpienie wartości minimalnej.
Aby zrealizować tak sformułowane zadanie, w komórce D1 wprowadź następującą formułę tablicową:
Linia 1. znak równości INDEKS otwórz nawias okrągły A4 dwukropek A20 średnik MIN otwórz nawias okrągły JEŻELI otwórz nawias okrągły D4 dwukropek D20 znak równości MIN otwórz nawias okrągły D4 dwukropek D20 zamknij nawias okrągły średnik WIERSZ otwórz nawias okrągły D4 dwukropek D20 zamknij nawias okrągły minus WIERSZ otwórz nawias okrągły D3 zamknij nawias okrągły średnik cudzysłów cudzysłów zamknij nawias okrągły zamknij nawias okrągły zamknij nawias okrągły.
W pierwszym argumencie funkcji INDEKS() podajesz zakres, z którego ma być zwracany wynik. Za pomocą funkcji JEŻELI() i drugiej funkcji MIN() sprawdzasz, czy analizowana wartość jest minimalna i jeśli tak, to przekazujesz do pierwszej funkcji MIN() jej pozycję, czyli numer kolejny wiersza w sprawdzanym zakresie. Pozycja wiersza jest obliczana na podstawie różnicy między numerem wiersza aktualnie sprawdzanej komórki i komórki D3. Pierwsza funkcja MIN() wybiera spośród podanych jej argumentów (pozycji wierszy) wartość najmniejszą, czyli pierwsze wystąpienie wartości minimalnej. Funkcja INDEKS() ma już wymagany drugi argument i może zwrócić wynik: zawartość komórki leżącej w podanym zakresie, w wierszu znajdującym się na obliczonej przez funkcję MIN() pozycji.
W bardzo prosty sposób dostosujesz przedstawioną formułę do wyszukiwania ostatniego wystąpienia wartości minimalnej. Wystarczy pierwszą funkcję MIN() zamienić na funkcję MAX() w następujący sposób:
Linia 1. znak równości INDEKS otwórz nawias okrągły A4 dwukropek A20 średnik MAX otwórz nawias okrągły JEŻELI otwórz nawias okrągły D4 dwukropek D20 znak równości MIN otwórz nawias okrągły D4 dwukropek D20 zamknij nawias okrągły średnik WIERSZ otwórz nawias okrągły D4 dwukropek D20 zamknij nawias okrągły minus WIERSZ otwórz nawias okrągły D3 zamknij nawias okrągły średnik cudzysłów cudzysłów zamknij nawias okrągły zamknij nawias okrągły zamknij nawias okrągły.
Utwórz arkusz, w którym będziesz zapisywać stan swojego konta w kolejnych dniach oraz kwotę odłożoną na sytuację awaryjną. Używając poznanych metod, napisz formułę, która wskaże pierwszy dzień, w którym stan konta jest niższy niż wskazana kwota.
Przykładowe rozwiązanie zadania:
R1Q8XbGT1pcka
Na zrzucie ekranu widoczny jest fragment arkusza Excel. W kolumnach A, B i C wprowadzono dane dotyczące stanu konta w kolejnych dniach oraz kwotę odłożoną na sytuację awaryjną. W arkuszu kolejno dodano opisy: w komórce A1 Data, w komórce B1 Stan konta, w komórce C1 Na wypadek. W kolumnie A, w komórkach od A2 do A26 wpisano kolejne daty. W kolumnie B, w komórkach od B2 do B26 wpisano kwoty w złotówkach. W kolumnie C, w komórkach od C2 do C26 wpisano kwoty w złotówkach. Dodatkowo zaprezentowano sposób obliczania pierwszego dnia, w którym stan konta jest niższy niż wskazana kwota. Formułę obliczania należy wpisać w odpowiedniej komórce. W tym przypadku w komórce H3. Brzmi ona następująco: =INDEKS(A2:A26;MIN(JEŻELI(B2:B26<G3;WIERSZ(B2:B26)- WIERSZ(B1;””))).
2
Ćwiczenie 2
Zmodyfikuj arkusz tak, aby wyświetlił pierwszą datę od momentu uchwyconego w poprzednim zadaniu, do powrotu do sytuacji, w której stan konta jest wyższy od zadanej kwoty.
Przykładowe rozwiązanie zadania:
Rb79aP5hC0Ljf
Na zrzucie ekranu widoczny jest fragment arkusza Excel, w kolumnach A, B i C wprowadzono dane dotyczące stanu konta w kolejnych dniach oraz kwotę odłożoną na sytuację awaryjną. W arkuszu kolejno dodano opisy: w komórce A1 Data, w komórce B1 Stan konta, w komórce C1 Na wypadek. W kolumnie A, w komórkach od A2 do A26 wpisano kolejne daty. W kolumnie B, w komórkach od B2 do B26 wpisano kwoty w złotówkach. W kolumnie C, w komórkach od C2 do C26 wpisano kwoty w złotówkach. Obok kolumn z danymi, komórkę G1 zatytułowano Pierwszy dzień, gdy stan konta mniejszy niż. W komórce G2 wpisano wartość. W komórce H2 wpisano datę. Dalej w komórce G3 wpisano liczbę 1000, a w komórce H3 datę 8.04.2020. Komórkę G5 zatytułowano Pierwszy dzień, gdy stan konta jest znowu powyżej: dalej w komórce G6 wpisano wartość, komórkę H6 zatytułowano data. Dalej w komórce G7 wpisano liczbę 1000. Dodatkowo zaprezentowano sposób obliczania pierwszego dnia, gdy stan konta jest znowu powyżej. Formułę obliczania należy wpisać w odpowiedniej komórce. W tym przypadku w komórce H7. Brzmi ona następująco: =INDEKS(A2:A26;MIN(JEŻELI(A2:A26>H3;JEŻELI(B2:B26>G7;WIERSZ(B2:B26)-WIERSZ(B1;);"");""))).