Excel formula: Summa pēc darba dienas -

Satura rādītājs

Vispārēja formula

=SUMPRODUCT((WEEKDAY(dates)=day_num)*values)

Kopsavilkums

Apkopojot datus pēc nedēļas dienas (ti, summējot pēc pirmdienas, otrdienas, trešdienas utt.), Varat izmantot funkciju SUMPRODUCT kopā ar WEEKDAY funkciju.

Parādītajā piemērā formula H4 ir:

=SUMPRODUCT((WEEKDAY(dates,2)=G4)*amts)

Paskaidrojums

Jums varētu rasties jautājums, kāpēc mēs neizmantojam funkciju SUMIF vai SUMIFS? Tie, šķiet, ir acīmredzams veids, kā summēt nedēļas nedēļas. Tomēr, nepievienojot palīga kolonnu ar nedēļas dienas vērtību, SUMIF nevar izveidot kritērijus, kas ņemtu vērā nedēļas dienu.

Tā vietā mēs izmantojam ērto funkciju SUMPRODUCT, kas graciozi apstrādā masīvus, neizmantojot Control + Shift + Enter.

Mēs izmantojam SUMPRODUCT tikai ar vienu argumentu, kas sastāv no šī izteiciena:

(WEEKDAY(dates,2)=G4)*amts

Strādājot no iekšpuses, WEEKDAY funkcija ir konfigurēta ar izvēles argumentu 2, kas liek tai atgriezt skaitļus 1-7 attiecīgi no pirmdienas līdz svētdienai. Tas nav nepieciešams, taču tas atvieglo dienu secības uzskaitīšanu un secīgu numuru G slejā uzņemšanu.

WEEKDAY novērtē katru vērtību nosauktajā diapazonā "datumi" un atgriež skaitli. Rezultāts ir šāds masīvs:

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

Pēc tam WEEKDAY atgrieztos skaitļus salīdzina ar vērtību G4, kas ir 1.

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

Rezultāts ir TRUE / FALSE vērtību masīvs.

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

Pēc tam šis masīvs tiek reizināts ar vērtībām nosauktajā diapazonā "amts". SUMPRODUCT darbojas tikai ar skaitļiem (nevis tekstu vai būla skaitļiem), bet matemātikas operācijas automātiski piespiež TRUE / FALSE vērtības uz nullēm un nullēm, tāpēc mums ir:

(0; 0; 0; 1; 0; 0; 0; 0) * (100; 250; 75; 275; 250; 100; 300; 125)

Kas dod:

(0; 0; 0; 275; 0; 0; 0; 0)

Tikai apstrādājot šo vienu masīvu, SUMPRODUCT summē vienumus un atgriež rezultātu.

Interesanti raksti...