Formula Excel: Suma până în ziua săptămânii -

Cuprins

Formula generică

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

rezumat

Pentru a însuma datele după ziua săptămânii (adică suma de luni, marți, miercuri etc.), puteți utiliza funcția SUMPRODUCT împreună cu funcția WEEKDAY.

În exemplul prezentat, formula din H4 este:

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

Explicaţie

S-ar putea să vă întrebați de ce nu folosim funcția SUMIF sau SUMIFS? Acestea par a fi o modalitate evidentă de a rezuma în funcție de zilele săptămânii. Cu toate acestea, fără a adăuga o coloană de ajutor cu o valoare a zilei săptămânii, nu există nicio modalitate de a crea un criteriu pentru SUMIF care să țină cont de ziua săptămânii.

În schimb, folosim funcția SUMPRODUCT utilă, care gestionează matricile cu grație, fără a fi nevoie să folosiți Control + Shift + Enter.

Folosim SUMPRODUCT cu un singur argument, care constă din această expresie:

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

Funcționând din interior spre exterior, funcția WEEKDAY este configurată cu argumentul opțional 2, care îl determină să returneze numerele 1-7, respectiv pentru zilele de luni-duminică. Acest lucru nu este necesar, dar face mai ușoară listarea zilelor în ordine și preluarea numerelor în coloana G în ordine.

WEEKDAY evaluează fiecare valoare din intervalul numit „date” și returnează un număr. Rezultatul este o matrice ca aceasta:

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

Numerele returnate de WEEKDAY sunt apoi comparate cu valoarea din G4, care este 1.

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

Rezultatul este o serie de valori ADEVĂRATE / FALSE.

(FALS; FALS; FALS; ADEVĂRAT; FALS; FALS; FALS; FALS)

Apoi, această matrice este înmulțită cu valorile din intervalul numit „amts”. SUMPRODUCT funcționează numai cu numere (nu text sau booleeni), dar operațiile matematice constrâng în mod automat valorile ADEVĂRATE / FALSE la cuiva și la zerouri, așa că avem:

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

Care produce:

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

Cu doar această singură matrice de procesat, SUMPRODUCT sumează articolele și returnează rezultatul.

Articole interesante...