Excel vzorec: Počítejte data podle dnů v týdnu -

Obecný vzorec

=SUMPRODUCT(--(WEEKDAY(dates)=day_num))

souhrn

Chcete-li počítat data podle všedního dne (tj. Počítat pondělí, úterý, středu atd.), Můžete použít funkci SUMPRODUCT společně s funkcí WEEKDAY. V zobrazeném příkladu je vzorec v F4:

=SUMPRODUCT(--(WEEKDAY(dates,2)=E4))

Poznámka: „dates“ je pojmenovaný rozsah B4: B15.

Vysvětlení

Možná se divíte, proč nepoužíváme COUNTIF nebo COUNTIF? Tyto funkce se zdají jako zřejmé řešení. Bez přidání pomocného sloupce, který obsahuje hodnotu ve všední den, však neexistuje způsob, jak vytvořit kritéria pro COUNTIF pro počítání pracovních dnů v rozsahu dat.

Místo toho používáme univerzální funkci SUMPRODUCT, která elegantně zpracovává pole bez nutnosti používat Control + Shift + Enter.

Používáme SUMPRODUCT pouze s jedním argumentem, který se skládá z tohoto výrazu:

--(WEEKDAY(dates,2)=E4)

Při práci zevnitř ven je funkce WEEKDAY konfigurována s volitelným argumentem 2, který způsobí, že bude vracet čísla 1-7 pro dny od pondělí do neděle. To usnadňuje vypisování dnů v pořadí s čísly ve sloupci E v pořadí.

WEEKDAY poté vyhodnotí každé datum v pojmenovaném rozsahu „dates“ a vrátí číslo. Výsledkem je pole jako toto:

(1;3;7;1;5;2;7;1;7;5;4;7)

Čísla vrácená WEEKDAY jsou poté porovnána s hodnotou v E4, která je 1:

(1;3;7;1;5;2;7;1;7;5;4;7)=1

Výsledkem je pole TRUE / FALSE hodnot.

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

SUMPRODUCT funguje pouze s čísly (ne textem nebo booleovskými čísly), takže k vynucení hodnot PRAVDA / NEPRAVDA k jednotkám a nule používáme dvojitý zápor:

(1;0;0;1;0;0;0;1;0;0;0;0)

S jediným polem ke zpracování SUMPRODUCT sečte položky a vrátí výsledek, 3.

Řešení prázdných dat

Pokud máte v seznamu dat prázdné buňky, získáte nesprávné výsledky, protože funkce WEEKDAY vrátí výsledek, i když není žádné datum. Chcete-li zpracovat prázdné buňky, můžete upravit vzorec následujícím způsobem:

=SUMPRODUCT((WEEKDAY(dates,2)=E4)*(dates""))

Vynásobení výrazem (data „“) je jedním ze způsobů, jak zrušit prázdné buňky.

Zajímavé články...