Excel vzorec: Počítajte narodeniny podľa mesiaca

Obsah

Všeobecný vzorec

=SUMPRODUCT(--(MONTH(birthday)=number))

Zhrnutie

Ak chcete spočítať počet narodenín v zozname, môžete použiť vzorec založený na funkciách SUMPRODUCT a MONTH. V zobrazenom príklade obsahuje E5 tento vzorec:

=SUMPRODUCT(--(MONTH(birthday)=D5))

Tento vzorec počíta narodeniny v januári (pretože D5 obsahuje 1) v pomenovanom rozsahu „narodeniny“ (B5: B104).

Vysvetlenie

Mysleli by ste si, že na spočítanie narodenín môžete použiť funkciu COUNTIF, ale problém je, že funkcia COUNTIF funguje iba s rozsahmi a nedovolí vám použiť niečo ako MESIAC na extrahovanie iba čísla mesiaca z dátumov. Namiesto toho teda používame SUMPRODUCT.

Vo vnútri SUMPRODUCT máme tento výraz:

MONTH(birthday)=D5)

Funkcia MESIAC extrahuje mesiac pre každý dátum v pomenovanom rozsahu „narodeniny“ a porovnáva sa s hodnotou v D5, ktorá je 1. Výsledkom je pole hodnôt TRUE / FALSE, kde každé TRUE predstavuje dátum, kde mesiac = 1.

Hodnoty TRUE FALSE sa potom prevedú na jednotky a nuly s dvojitým záporom (-). SUMPRODUCT potom tieto čísla sčíta a vráti konečný výsledok.

Zaobchádzanie s prázdnymi bunkami

Ak máte v zozname narodenín prázdne bunky, získate nesprávne výsledky, pretože MESIAC (0) vráti hodnotu 1. Ak chcete pracovať s prázdnymi bunkami, môžete upraviť vzorec takto:

=SUMPRODUCT((MONTH(birthdays)=D5)*(birthdays""))

Vynásobením výrazu (narodeniny „“) sa skutočne zrušia mesačné hodnoty prázdnych buniek. Na stránke SUMPRODUCT nájdete ďalšie informácie o tom, ako fungujú logické výrazy vo vnútri SUMPRODUCT.

Riešenie kontingenčnej tabuľky

Kontingenčná tabuľka je vynikajúcim riešením aj pre tento problém.

Zaujímavé články...