INDEX EQUIV avec plusieurs critères

Fonctions utilisées :
INDEX EQUIV plusieurs critères

Résumé

Pour rechercher des valeurs avec INDEX + EQUIV tout en appliquant plusieurs critères de recherche, il faudra utiliser une formule matricielle. Pour valider cette formule si les versions d’Excel antérieures à Office 365 il faut utiliser Ctrl+Shift+Entrée.

= INDEX( C3:C7 ; 
    EQUIV( 1 ; (I3<D3:D7)*(I2=B3:B7) ; 0 )
  )

Cette formule permet de récupérer la valeur du stock de la première chaise qui a une quantité supérieure à 155 unités.

Formule Excel – INDEX EQUIV avec plusieurs critères

Avec 2 critères
= INDEX( plage_résultat ; 
    EQUIV( 1 ; 
      (critère_1=plage_critère_1)*
      (critère_2=plage_critère_2) ; 
    0 )
  )

Avec 3 critères
= INDEX( plage_résultat ; 
    EQUIV( 1 ; 
      (critère_1=plage_critère_1)*
      (critère_2=plage_critère_2)*
      (critère_3=plage_critère_3) ; 
    0 )
  )

Explications

La solution INDEX-EQUIV permet de rechercher une valeur dans un tableau en fonction d’une autre valeur connue.

La fonction EQUIV permet de récupérer la position d’une valeur dans une matrice donnée. La fonction INDEX renvoie la valeur située dans un tableau grâce à sa position à l’intérieur de celui-ci.

= EQUIV( valeur_cherchée ; matrice ; type_recherche )
= EQUIV( "Bureau 1" ; B3:B7 ; 0 )
--> On récupère la position de "bureau 1" dans B3:B7
    Résultat : 2

= INDEX( matrice ; no_ligne ; [no_colonne] )
= INDEX( E3:E7 ; 2 )
--> On récupère la valeur unitaire dans la matrice E3:E7
    grâce à la position identifiée grâce à la fonction EQUIV
    Résultat : 220,16

Normalement, la solution INDEX + EQUIV ne permet pas l’utilisation de plusieurs critères. Il est possible de contourner le problème en créer une colonne qui concatène les différentes « colonnes-critères ». Dans notre cas, ça ne résoudrait pas notre problème puisque nous voulons indiquer des égalités :

I2=B3:B7

Et des inégalités :

I3<D3:D7

La solution vient de l’utilisation d’une formule matricielle. On va créer un tableau composé de 0 et 1 basé sur les critères souhaités. Si la valeur 1 est indiquée, c’est que tous les critères ont été remplis.

= (155<D3:D7)*("chaise"=B3:B7)

La fonction EQUIV viendra alors récupérer la position du premier « 1 » et le tout sera intégré dans la fonction INDEX.

= EQUIV( 1 ; (155<D3:D7)*("chaise"=B3:B7) ; 0 )
= INDEX( C3:C7 ;
    EQUIV( 1 ; (155<D3:D7)*("chaise"=B3:B7) ; 0 )
  )

Limitations

Comme dans notre exemple, plusieurs enregistrements peuvent correspondre aux différents critères saisis. La formule suivante vous permettra de compter le nombre de cellules valident.

= SOMME( (I4<D3:D7)*(I3=B3:B7) )

Formules en lien

4.8/5 - (24 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.