Formula Excel: retribuzione media settimanale -

Formula generica

=SUMPRODUCT(hours*rate)/COUNTIF(hours,">0")

Sommario

Per calcolare la retribuzione media settimanale, escluse le settimane in cui non sono state registrate ore e senza la retribuzione totale settimanale già calcolata, è possibile utilizzare una formula basata sulle funzioni SUMPRODUCT e COUNTIF. Nell'esempio mostrato, la formula in J5 è:

=SUMPRODUCT(D5:I5*D6:I6)/COUNTIF(D5:I5,">0")

che restituisce la retribuzione media settimanale, escluse le settimane in cui non sono state registrate ore. Questa è una formula di matrice, ma non è necessario inserirla con CTRL + MAIUSC + INVIO perché la funzione SUMPRODUCT può gestire in modo nativo la maggior parte delle operazioni di matrice.

Spiegazione

Per prima cosa potresti pensare che questo problema possa essere risolto con la funzione MEDIA.SE o MEDIA.SE. Tuttavia, poiché la retribuzione totale settimanale non fa parte del foglio di lavoro, non possiamo utilizzare queste funzioni perché richiedono un intervallo.

Lavorando dall'interno verso l'esterno, calcoliamo innanzitutto la retribuzione totale per tutte le settimane:

D5:I5*D6:I6 // total pay for all weeks

Questa è un'operazione di matrice che moltiplica le ore per le tariffe per calcolare gli importi della paga settimanale. Il risultato è un array come questo:

(87,63,48,0,12,0) // weekly pay amounts

Poiché ci sono 6 settimane nel foglio di lavoro, l'array contiene 6 valori. Questo array viene restituito direttamente alla funzione SUMPRODUCT:

SUMPRODUCT((348,252,192,0,48,0))

La funzione SUMPRODUCT restituisce quindi la somma degli elementi nell'array, 840. A questo punto, abbiamo:

=840/COUNTIF(D5:I5,">0")

Successivamente, la funzione CONTA.SE restituisce un conteggio di valori maggiori di zero nell'intervallo D5: I5. Poiché 2 dei 6 valori sono vuoti e Excel valuta le celle vuote come zero, CONTA.SE restituisce 4.

=840/4 =210

Il risultato finale è 840 diviso 4, che è uguale a 210

Articoli interessanti...