„Excel“ formulė: skaičiuokite gimtadienius pagal mėnesius

Turinys

Bendroji formulė

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

Santrauka

Norėdami suskaičiuoti gimimo dienų skaičių sąraše, galite naudoti formulę, pagrįstą funkcijomis SUMPRODUCT ir MONTH. Parodytame pavyzdyje E5 yra ši formulė:

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

Ši formulė skaičiuoja sausio mėnesio gimtadienius (nes D5 yra 1) pavadintame diapazone „gimtadieniai“ (B5: B104).

Paaiškinimas

Manytumėte, kad gimtadieniams skaičiuoti galite naudoti funkciją COUNTIF, tačiau bėda ta, kad COUNTIF veikia tik su diapazonais ir neleis naudoti mėnesio skaičiui iš datų išgauti tik mėnesio. Taigi, mes naudojame SUMPRODUCT.

„SUMPRODUCT“ viduje turime šią išraišką:

MONTH(birthday)=D5)

Funkcija MĖNESIS išskiria mėnesį kiekvienai datai nurodytame diapazone „gimtadieniai“ ir tai lyginama su D5 reikšme, kuri yra 1. Rezultatas yra TIKRA / NETIESA reikšmių masyvas, kuriame kiekviena TIESA reiškia datą, kai mėnuo = 1.

TIKROS NETIESOS vertės yra konvertuojamos į vienetus ir nulius su dvigubu neigiamu (-). Tada SUMPRODUCT susumuoja šiuos skaičius ir pateikia galutinį rezultatą.

Tvarkymas su tuščiomis kameromis

Jei gimtadienių sąraše turite tuščių langelių, gausite neteisingus rezultatus, nes MONTH (0) grąžina 1. Norėdami tvarkyti tuščius langelius, formulę galite koreguoti taip:

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

Padauginus iš išraiškos (gimtadieniai ""), efektyviai panaikinamos tuščių langelių mėnesio vertės. Daugiau informacijos apie tai, kaip loginės išraiškos veikia SUMPRODUCT viduje, rasite puslapyje SUMPRODUCT.

„Pivot“ stalo sprendimas

Sukamasis stalas taip pat yra puikus šios problemos sprendimas.

Įdomios straipsniai...