Fonction MAX.SI.ENS

La fonction MAX.SI.ENS est une fonction Excel permettant de déterminer la valeur la plus élevée tout en répondant à un ou plusieurs critères. Les conditions peuvent être définies sur du texte, des dates, des nombres, des cellules vides… Elle supporte les caractères génériques et permet donc les recherches partielles (ex : cellules commençant par).
Utilisation de la fonction MAX.SI.ENS sur Excel

Syntaxe

La fonction MAX.SI.ENS s’écrit de la façon suivante :

= MAX.SI.ENS( 
     plage_max
     plage_critère1 ; critères1 ; 
     [plage_critère2] ; [critères2] ; 
     ... 
  )

Cette fonction possède au minimum trois arguments.

  • plage_max – Sélection de cellules qui contiennent la valeur à récupérer.
  • plage_critère1 – Sélection de cellules qui doivent répondre au critère.
  • critères1 – Critère à appliquer. Il peut s’agir d’un critère de date, de nombre ou de texte.
  • [plage_critère2] – Argument optionnel. Sélection de cellules sur lesquels appliquer un second critère.
  • [critères2] – Argument optionnel. Second critère à appliquer.

La fonction MAX.SI.ENS détermine la valeur la plus élevée dans une plage de cellules et qui répond à un ou plusieurs critères. Cette fonction permet l’utilisation des opérateurs logiques (>,<,<>,=) et des caractères génériques (*, ?). Ces derniers permettront l’utilisation de critères avancés (ex: cellule commençant par).

On peut également déterminer la date la plus récente grâce à la fonction MAX.SI.ENS. En effet, Excel mémorise les dates sous format de nombres sur lesquels il applique un format particulier. La date la plus récente est la valeur la plus élevée.

Les critères définis peuvent s’appliquer sur :

  • Des dates ;
  • Du texte ;
  • Des nombres.

= MAX.SI.ENS( D1:D10 ; A1:A10 ; "chaise")
--> 1 critère sur du texte

= MAX.SI.ENS( D1:D10 ; A1:A10 ; ">100")
--> 1 critère sur un nombre

= MAX.SI.ENS( D1:D10 ; A1:A10 ; "<>01/01/2023")
--> 1 critère sur une date

L’avantage de la fonction MAX.SI.ENS est de pouvoir indiquer autant de critères que nous souhaitons. Il suffit alors de saisir tour à tour la plage de cellules sur laquelle appliquer le critère puis le critère.

= MAX.SI.ENS( 
     D1:D10 ;   --> plage max
    A1:A10 ;    --> plage avec critère 1
    "chaise" ;  --> critère 1
    C1:C10 ;    --> plage de critère 2
    100.        --> critère 2
  )

Comment utiliser la fonction MAX.SI.ENS ?

La fonction MAX.SI.ENS a au minimum 3 arguments. Le premier permet de saisir la plage qui contient la valeur maximale à récupérer. La seconde plage est celle sur laquelle appliquer un critère. Le 3e argument est le critère à appliquer. Il faudra utiliser des opérateurs logiques et potentiellement des caractères génériques. Pour ajouter d’autres critères, il faudra saisir plage de critère et critère à nouveau.

Les critères

La fonction MAX.SI.ENS permet l’utilisation des opérateurs logiques (<, >, <>, <=, >=) et des caractères génériques (*, ?). Pour cela, il faut appliquer une syntaxe particulière. Le tableau suivant résume les différents critères applicables suivant le format de la valeur (nombre, texte, date).

FormatCritèreSyntaxe
NumériqueValeur égale à 1010
Valeur supérieure à 10">10"
Valeur inférieure à 10"<10"
Valeur supérieure ou égale à 10">=10"
Valeur inférieure ou égale à 10"<=10"
Valeur différente de 10"<>10"
DateValeur égale au 01/01/2023"01/01/2023"
Valeur supérieure au 01/01/2023">01/01/2023"
Valeur inférieure à au 01/01/2023"<01/01/2023"
Valeur supérieure ou égale au 01/01/2023">=01/01/2023"
Valeur inférieure ou égale au 01/01/2023"<=01/01/2023"
Valeur différente du 01/01/2023"<>01/01/2023"
TexteValeur égale à "Cleex""Cleex"
Valeur différente de "Cleex""<>Cleex"
Valeur commençant par "Cl""Cl*"
Valeur se terminant par "ex""*ex"
Valeur contenant "ee""*ee*"
Valeur au format xxx-xxx"???-???"
AutresValeur nulle (peut être le résultat d’une formule)""
Cellule vide (pas de formule ni de valeur nulle)"="
Cellule non vide"<>"
Date ou num.Valeur égale à A1A1
Valeur supérieure à A1">"&A1
Valeur inférieure à A1"<"&A1
Valeur supérieure ou égale à A1">="&A1
Valeur inférieure ou égale à A1"<="&A1
Valeur différente de A1"<>"&A1

Quelques utilisations de la fonction MAX.SI.ENS

Critères sur des nombres

Pour récupérer la valeur maximale répondant à un critère numérique, inspirez-vous de l’exemple suivant :

= MAX.SI.ENS( D3:D14 ; C3:C14 ; ">150" ) --> prix égal à 150

Critères sur des dates

Pour récupérer la valeur maximale répondant à un critère de date, inspirez-vous de l’exemple suivant :

= MAX.SI.ENS( D3:D14 ; E3:E14 ; "<>08/01/2023" )
--> date différente du 08/01/2023

Critères sur des textes

Pour récupérer la valeur maximale répondant à un critère de texte, inspirez-vous de l’exemple suivant :

= MAX.SI.ENS( D3:D14 ; B3:B14 ; "chaise" )
--> si cellule est égale à "chaise"

Critères sur des textes partiels

La fonction MAX.SI.ENS permet de faire des recherches partielles sur du texte. Ainsi nous pouvons mettre des critères tels que « commençant par », « se terminant par », « contenant », « ne contenant pas ». Voici un exemple de l’utilisation de caractères génériques.

= MAX.SI.ENS( D3:D14 ; B3:B14 ; "*bureau*" )
--> cellule contenant "bureau"

Critères contenus dans d’autres cellules

Il est possible de faire appel à une cellule contenant le critère désiré. Pour cela, il faudra se servir du caractère & pour joindre les opérateurs logiques et/ou les caractères génériques avec la cellule.

= MAX.SI.ENS( D3:D14 ; C3:C14 ; ">" & A1 )
= MAX.SI.ENS( D3:D14 ; B3:B14 ; "<>" & A1 )
= MAX.SI.ENS( D3:D14 ; B3:B14 ; "*" & A1 & "*" )

Gérer les cellules vides et non vides

Par une syntaxe particulière ( «  », « <> », « = ») il est possible d’indiquer des critères en lien avec les cellules vides ou non vides.

= MAX.SI.ENS( D3:D14 ; B3:B14 ; "" ) 
--> si cellule vide
    mais pouvant contenir une formule renvoyant
    un résultat nul

= MAX.SI.ENS( D3:D14 ; B3:B14 ; "<>" )
--> si cellule non vide

= MAX.SI.ENS( D3:D14 ; B3:B14 ; "=" )
--> si cellule vide (ne contient rien)

Appliquer plusieurs critères avec logique ET

Comme dans l’exemple présenté en en-tête d’article, on peut cumuler les critères. Voici un exemple :

= MAX.SI.ENS(
    D3:D14 ;         plage max
    B3:B14 ;         plage critère 1
    "chaise" ;       critère 1
    C3:C14 ;         plage critère 2
    ">150" ;         critère 2
    D3:D14 ;         plage critère 3
    "<160" ;         critère 3
    E3:E14 ;         plage critère 4
    "<>08/01/2023"   critère 4
  )

Appliquer plusieurs critères avec logique OU

Il arrivera que vous vouliez plusieurs possibilités lors de la saisie d’un critère dans votre fonction MAX.SI.ENS. Par exemple, nous pouvons vouloir le maximum entre les « chaises » ou « bureaux ». Pour cela, vous avez deux solutions.

La première consiste à cumuler plusieurs fonctions MAX.SI.ENS :

= MAX( 
    MAX.SI.ENS( D3:D14 ; B3:B14 ; "chaise" ) ;
    MAX.SI.ENS( D3:D14 ; B3:B14 ; "bureau" )
 )

L’autre solution est plus technique et requiert une syntaxe particulière :

= MAX( MAX.SI.ENS( D3:D14 ; B3:B14 ; {"chaise";"bureau"} ) )

Caractéristique de la fonction MAX.SI.ENS

  • La fonction MAX.SI.ENS permet de récupérer la valeur la plus élevée dans une plage de cellules ou la date la plus récente ;
  • Il faudra mettre les critères entre guillemets dès qu’il s’agira de texte ou qu’il y aura des opérateurs logiques ;
  • Il faudra lier l’opérateur logique et ses guillemets et la cellule contenant le critère grâce au caractère & ;
  • La fonction MAX.SI.ENS supporte les recherches partielles grâce aux caractères génériques (*, ?).
4.8/5 - (28 votes)

Vous avez apprécié cet article ?

Pour me soutenir, cliquez sur cette publicité. Pas besoin d’acheter, un clic suffit.

Merci. 🤩

Annonces

Modèles Excel

+

Livret 

7 méthodes pour gagner 2H par semaine sur Excel

C’est gratuit 🤩

Les formations

Formations Excel

Parce que chacun devrait avoir les moyens de faire son travail sur Excel

Découvrez des formations accessibles, rapides et directement applicables.