Formule Excel: Max si les critères correspondent -

Table des matières

Formule générique

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

Sommaire

Pour trouver la valeur maximale dans une plage avec des critères spécifiques, vous pouvez utiliser une formule matricielle de base basée sur la fonction IF et la fonction MAX. Dans l'exemple illustré, la formule de la cellule H8 est:

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

qui renvoie la température maximale à la date en H7.

Remarque: il s'agit d'une formule matricielle et doit être saisie avec Ctrl + Maj + Entrée

Explication

L'exemple illustré contient près de 10 000 lignes de données. Les données représentent des lectures de température prises toutes les 2 minutes sur une période de plusieurs jours. Pour une date donnée (fournie dans la cellule H7), nous voulons obtenir la température maximale à cette date.

Dans la fonction IF, le test logique est entré sous la forme B5: B9391 = H7. Étant donné que nous comparons la valeur de H7 à une plage de cellules (un tableau), le résultat sera un tableau de résultats, où chaque élément du tableau est VRAI ou FAUX. Les valeurs TRUE représentent des dates qui correspondent à H7.

Pour la valeur si true, nous fournissons la plage E5: E9391, qui récupère l'ensemble complet des températures en degrés Fahrenheit. Cela renvoie un tableau de valeurs de la même taille que le premier tableau.

La fonction IF agit comme un filtre. Parce que nous fournissons à IF un tableau pour le test logique, IF renvoie un tableau de résultats. Lorsque la date correspond à H7, le tableau contient une valeur de température. Dans tous les autres cas, le tableau contient FALSE. En d'autres termes, seules les températures associées à la date dans H7 survivent au déclenchement via la fonction IF.

Le résultat du tableau de la fonction IF est livré directement à la fonction MAX, qui renvoie la valeur maximale du tableau.

Avec MAXIFS

Dans Excel O365 et Excel 2019, la nouvelle fonction MAXIFS peut trouver la valeur maximale avec un ou plusieurs critères sans avoir besoin d'une formule matricielle. Avec MAXIFS, la formule équivalente pour cet exemple est:

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

Articles intéressants...