Formuła Excel: Maksymalna wartość w danym dniu tygodnia -

Formuła ogólna

(=MAX(IF(TEXT(dates,"ddd")="Mon",values)))

Podsumowanie

Aby znaleźć maksymalną wartość w danym dniu tygodnia (np. W poniedziałek, wtorek, środę itp.), Można użyć prostej formuły tablicowej opartej na funkcjach MAKS., JEŻELI i TEKST. W przedstawionym przykładzie formuła w komórce F5 to:

=MAX(IF(TEXT(dates,"ddd")=F4,values))

Gdzie daty (B5: B15) i wartości (C5: C15) to nazwane zakresy.

Uwaga: to jest formuła tablicowa i należy ją wprowadzić za pomocą kombinacji Control + Shift + Enter.

Wyjaśnienie

Działając od wewnątrz, funkcja TEKST służy do wyodrębnienia wartości dnia tygodnia dla każdej daty:

=TEXT(dates,"ddd")

Daje to tablicę taką jak ta:

("Mon";"Tue";"Wed";"Thu";"Fri";"Mon";"Tue";"Wed";"Thu";"Fri";"Mon")

który jest następnie porównywany z tekstem w F4, „Mon”. Wynikiem jest kolejna tablica, która zawiera tylko wartości PRAWDA i FAŁSZ:

(TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE)

Zauważ, że każda wartość PRAWDA odpowiada poniedziałkowi. Ta tablica jest zwracana wewnątrz funkcji JEŻELI jako test logiczny. Działa jak filtr, aby odfiltrować wartości z innych dni tygodnia. Końcowy wynik funkcji JEŻELI, który jest zwracany bezpośrednio do funkcji MAX, wygląda następująco:

=MAX((85;FALSE;FALSE;FALSE;FALSE;94;FALSE;FALSE;FALSE;FALSE;52))

MAX automatycznie ignoruje wartości FALSE i zwraca najwyższą pozostałą wartość, 94.

Z AGREGATEM

Aby uzyskać nieco bardziej geekową formułę, która nie wymaga Control + Shift + Enter, możesz użyć funkcji AGREGUJ w następujący sposób:

=AGGREGATE(14,6,values/(TEXT(dates,"ddd")=F4),1)

To jest formuła użyta w komórce F6 w pokazanym przykładzie. Tutaj podajemy AGREGATU 14 dla argumentu funkcji (DUŻY) i 6 dla argumentu opcji (ignoruj ​​błędy). Następnie tworzymy logiczne wyrażenie, używając funkcji TEKST, aby sprawdzić wszystkie daty w poniedziałki. Wynikiem tej operacji jest tablica wartości PRAWDA / FAŁSZ, które stają się mianownikiem pierwotnych wartości. W przypadku użycia w operacji matematycznej FALSE przyjmuje wartość zero i generuje # DIV / 0! błąd. PRAWDA ma wartość 1 i zwraca oryginalną wartość. Ostateczna tablica wartości i błędów działa jak filtr. AGREGUJ ignoruje wszystkie błędy i zwraca największą (maksymalną) z pozostałych wartości.

MAXIFS

Funkcja MAXIFS, dostępna w programie Excel Office 365, może zwracać maksymalną wartość przy użyciu jednego lub większej liczby kryteriów bez potrzeby stosowania formuły tablicowej. Jednak MAXIFS jest funkcją opartą na zakresie i nie zezwala innym funkcjom, takim jak TEKST, na przetwarzanie wartości w zakresach kryteriów. Możesz jednak dodać kolumnę pomocniczą do danych, wygenerować wartości dni tygodnia za pomocą TEKST, a następnie użyć wartości MAXIFS z kolumną pomocniczą jako zakresem kryteriów.

Interesujące artykuły...