Formula di Excel: Max se i criteri corrispondono -

Sommario

Formula generica

(=MAX(IF(criteria_range=criteria,value_range)))

Sommario

Per trovare il valore massimo in un intervallo con criteri specifici, è possibile utilizzare una formula di matrice di base basata sulla funzione SE e sulla funzione MAX. Nell'esempio mostrato, la formula nella cella H8 è:

(=MAX(IF(B5:B9391=H7,E5:E9391)))

che restituisce la temperatura massima nella data in H7.

Nota: questa è una formula di matrice e deve essere inserita con Control + Maiusc + Invio

Spiegazione

L'esempio mostrato contiene quasi 10.000 righe di dati. I dati rappresentano le letture della temperatura effettuate ogni 2 minuti in un periodo di giorni. Per una determinata data (fornita nella cella H7), vogliamo ottenere la temperatura massima in quella data.

All'interno della funzione IF, il test logico viene inserito come B5: B9391 = H7. Poiché stiamo confrontando il valore in H7 con un intervallo di celle (un array), il risultato sarà un array di risultati, in cui ogni elemento dell'array è VERO o FALSO. I valori TRUE rappresentano le date che corrispondono a H7.

Per il valore, se vero, forniamo l'intervallo E5: E9391, che recupera l'intero set di temperature in Fahrenheit. Ciò restituisce un array di valori della stessa dimensione del primo array.

La funzione IF funge da filtro. Poiché forniamo IF con un array per il test logico, IF restituisce un array di risultati. Dove la data corrisponde a H7, l'array contiene un valore di temperatura. In tutti gli altri casi, l'array contiene FALSE. In altre parole, solo le temperature associate alla data in H7 sopravvivono al viaggio attraverso la funzione IF.

Il risultato della matrice dalla funzione IF viene consegnato direttamente alla funzione MAX, che restituisce il valore massimo nella matrice.

Con MAXIFS

In Excel O365 ed Excel 2019, la nuova funzione MAXIFS può trovare il valore massimo con uno o più criteri senza la necessità di una formula di matrice. Con MAXIFS, la formula equivalente per questo esempio è:

=MAXIFS(E5:E9391,B5:B9391,H7)

Articoli interessanti...