
Formula generica
=SUMPRODUCT((MONTH(dates)=month)*amounts)
Sommario
Per sommare i dati per mese, ignorando l'anno, è possibile utilizzare una formula basata sulle funzioni SUMPRODUCT e MONTH. Nell'esempio mostrato, la formula in H6 è:
=SUMPRODUCT((MONTH(dates)=3)*amounts)
Il risultato è un totale di tutte le vendite a marzo, ignorando l'anno.
Spiegazione
Questo set di dati contiene oltre 2900 record e la formula precedente utilizza due intervalli denominati:
dates = B5:B2932 amounts = E5:E2932
All'interno della funzione SUMPRODUCT, la funzione MESE viene utilizzata per estrarre il numero del mese per ogni data nel set di dati e confrontarlo con il numero 3:
(MONTH(dates)=3)
Se assumiamo un piccolo set di dati che elenca 3 date ciascuna in gennaio, febbraio e marzo (in questo ordine), il risultato sarebbe un array contenente nove numeri come questo:
(1;1;1;2;2;2;3;3;3)
dove ogni numero è il "numero del mese" per una data. Quando i valori vengono confrontati con 3, il risultato è un array come questo:
(FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE)
Questo array viene quindi moltiplicato per i valori di importo associati a ciascuna data di marzo. Se assumiamo che tutti e nove gli importi siano uguali a 100, l'operazione si presenta così:
(0;0;0;0;0;0;1;1;1) * (100;100;100;100;100;100;100;100;100)
Notare che l'operazione matematica modifica i valori VERO FALSO in uno e zero. Dopo la moltiplicazione, abbiamo un singolo array in SUMPRODUCT:
=SUMPRODUCT((0;0;0;0;0;0;100;100;100))
Nota gli unici importi superstiti sono associati a marzo, il resto è zero.
Infine, SUMPRODUCT restituisce la somma di tutti gli elementi: 300 nell'esempio abbreviato sopra e 25.521 nello screenshot con i dati effettivi.
Contare per mese ignorando l'anno
Per ottenere un conteggio per mese ignorando l'anno, puoi utilizzare SUMPRODUCT in questo modo:
=SUMPRODUCT(--(MONTH(dates)=3))
Media mensile ignorando l'anno
Per calcolare e calcolare la media per mese ignorando l'anno, combina le due formule SUMPRODUCT sopra in questo modo:
=SUMPRODUCT((MONTH(dates)=3)*amounts)/SUMPRODUCT(--(MONTH(dates)=3))