Recherche multicritères avec INDEX et MATCH
Lorsqu'il s'agit d'une grande base de données dans une feuille de calcul Excel avec plusieurs colonnes et légendes de lignes, il est toujours difficile de trouver quelque chose qui répond à plusieurs critères. Dans ce cas, vous pouvez utiliser une formule matricielle avec the INDEX et MATCH fonctions.
Comment effectuer une recherche avec plusieurs critères ?
Pour découvrir le Les produits qui est blanc et moyenne-taille avec un prix de $18 comme le montre l'image ci-dessus, vous pouvez profiter de la logique booléenne pour générer un tableau de 1 et de 0 pour afficher les lignes qui répondent aux critères. La fonction MATCH trouvera alors la position de la première ligne répondant à tous les critères. Après cela, INDEX trouvera l'ID de produit correspondant sur la même ligne.
Syntaxe générique
=INDEX(return_range,MATCH(1,(criteria_value1=criteria_range1*criteria_value2=criteria_range2*(…),0))
√ Remarque : Il s'agit d'une formule matricielle qui vous oblige à entrer avec Ctrl + Shift + Entrer.
- plage_retour : La plage à partir de laquelle vous souhaitez que la formule de combinaison renvoie l'ID de produit. Ici se réfère à la plage d'ID de produit.
- valeur_critère : Les critères utilisés pour localiser la position de l'ID de produit. Il s'agit ici des valeurs des cellules H4, H5 et H6.
- plage_critères : Les plages correspondantes où le critères_valeurs sont répertoriés. Ici se réfère à la couleur, la taille et les gammes de prix.
- match_type 0 : Force MATCH à trouver la première valeur exactement égale à la valeur de recherche.
Pour trouver le produit qui blanc et moyenne-taille avec un prix de $18, veuillez copier ou saisir la formule ci-dessous dans la cellule H8, et appuyez sur Ctrl + Shift + Entrer pour obtenir le résultat :
= INDEX (B5: B10, CORRESPONDANCE(1,("Blanc"=C5: C10) * ("Moyen"=D5: D10) * (18=E5: E10),0))
Ou utilisez une référence de cellule pour rendre la formule dynamique :
= INDEX (B5: B10, CORRESPONDANCE(1,(H4=C5: C10) * (H5=D5: D10) * (H6=E5: E10),0))
Explication de la formule
=INDEX(B5:B10,MATCH(1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10),0))
- (H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10): La formule compare la couleur dans la cellule H4 contre toutes les couleurs de la gamme C5: C10; compare la taille dans H5 contre toutes les tailles dans D5: D10; compare le prix dans H6 contre tous les prix en E5: E10. Le résultat initial est comme ceci :
{VRAI;FAUX;VRAI;FAUX;VRAI;FAUX}*{FAUX;FAUX;VRAI;VRAI;VRAI;FAUX}*{FAUX;FAUX;FAUX;VRAI;VRAI;FAUX}.
La multiplication transformera les VRAI et FAUX en 1 et 0 :
{1;0;1;0;1;0}*{0;0;1;1;1;0}*{0;0;0;1;1;0}.
Après multiplication, nous aurons un seul tableau comme celui-ci :
{0;0;0;0;1;0}. - CORRESPONDANCE(1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10), 0) = CORRESPONDANCE(1,{0;0;0;0;1;0}, 0): Le match_type 0 demande à la fonction MATCH de trouver la correspondance exacte. La fonction renverra alors la position de 1 dans le tableau {0;0;0;0;1;0}, lequel est 5.
- INDICE(B5: B10,CORRESPONDANCE(1,(H4=C5:C10)*(H5=D5:D10)*(H6=E5:E10), 0)) = INDICE(B5: B10,5): La fonction INDEX renvoie le 5ème valeur dans la plage d'ID de produit B5: B10, lequel est 30005.
Fonctions connexes
La fonction Excel INDEX renvoie la valeur affichée en fonction d'une position donnée dans une plage ou un tableau.
La fonction Excel MATCH recherche une valeur spécifique dans une plage de cellules et renvoie la position relative de la valeur.
Formules associées
Rechercher la valeur de correspondance la plus proche avec plusieurs critères
Dans certains cas, vous devrez peut-être rechercher la valeur de correspondance la plus proche ou approximative en fonction de plusieurs critères. Avec la combinaison des fonctions INDEX, MATCH et IF, vous pouvez le faire rapidement dans Excel.
Correspondance approximative avec INDEX et MATCH
Il y a des moments où nous devons trouver des correspondances approximatives dans Excel pour évaluer les performances des employés, noter les scores des étudiants, calculer les frais de port en fonction du poids, etc. Dans ce didacticiel, nous expliquerons comment utiliser les fonctions INDEX et MATCH pour récupérer le résultats dont nous avons besoin.
Rechercher des valeurs dans une autre feuille de calcul ou un autre classeur
Si vous savez comment utiliser la fonction VLOOKUP pour rechercher des valeurs dans une feuille de calcul, les valeurs vlookup d'une autre feuille de calcul ou d'un classeur ne vous poseront aucun problème. Le didacticiel vous montrera comment rechercher des valeurs à partir d'une autre feuille de calcul dans Excel.
Les meilleurs outils de productivité de bureau
Kutools for Excel - vous aide à vous démarquer de la foule
Kutools pour Excel possède plus de 300 fonctionnalités, Assurez-vous que ce dont vous avez besoin est à portée de clic...
Onglet Office - Activer la lecture et l'édition par onglets dans Microsoft Office (y compris Excel)
- Une seconde pour basculer entre des dizaines de documents ouverts!
- Réduisez chaque jour des centaines de clics de souris, dites adieu à la souris.
- Augmente votre productivité de 50% lors de l'affichage et de l'édition de plusieurs documents.
- Apporte des onglets efficaces à Office (y compris Excel), tout comme Chrome, Edge et Firefox.