Index, Match et Xmatch
Glissez pour afficher le menu
XLOOKUP est la fonction de recherche privilégiée pour les modèles Excel modernes, mais de nombreux classeurs réels s'appuient encore sur INDEX et MATCH. Dans ce chapitre, découvrez comment ces fonctions fonctionnent ensemble et comment XMATCH étend la même logique avec plus de flexibilité.
Structure de MATCH
=MATCH(lookup_value, lookup_array, [match_type])
lookup_value: valeur recherchée ;lookup_array: plage dans laquelle la recherche est effectuée ;[match_type]: comportement de correspondance ;0: correspondance exacte ;1: valeur la plus grande inférieure ou égale à la valeur recherchée ;-1: valeur la plus petite supérieure ou égale à la valeur recherchée.
MATCH renvoie une position, pas la valeur réelle.
Structure de INDEX
=INDEX(array, row_num, [col_num])
array: ensemble de données à retourner ;row_num: position de la ligne ;[col_num]: position de la colonne (optionnelle).
INDEX récupère une valeur basée sur la position.
Combinaison INDEX et MATCH
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
MATCH(...): trouve la position du produit ;INDEX(...): retourne la valeur à cette position.
Cela recrée le comportement de recherche sans limitations directionnelles.
Structure de XMATCH
=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
lookup_value: valeur recherchée ;lookup_array: plage dans laquelle la recherche est effectuée ;[match_mode]: logique de correspondance ;[search_mode]: direction de recherche.
XMATCH renvoie des positions comme MATCH, mais ajoute des contrôles de recherche modernes similaires à XLOOKUP.
Dans la feuille Summary, saisissez :
=MATCH("Laptop", Products[Product], 0)
Vérifiez qu'Excel renvoie la position de Laptop dans la table Products.
Saisissez :
=INDEX(Products[Price], 3)
Vérifiez que la formule retourne la valeur à la position 3.
Saisissez :
=INDEX(Products[Price], MATCH("Keyboard", Products[Product], 0))
La formule récupère désormais dynamiquement le prix du produit correspondant.
Remplacez la valeur de recherche fixe par :
=INDEX(Products[Price], MATCH([@Product], Products[Product], 0))
[@Product]: valeur du produit de la ligne courante ;Products[Product]: colonne de recherche ;Products[Price]: colonne de valeur retournée.
La formule fonctionne désormais dynamiquement dans la structure du tableau.
Saisissez :
=XMATCH("Gaming Chair", Products[Product])
Vérifiez qu'Excel renvoie la position de la ligne correspondante.
Saisissez :
=INDEX(Products, XMATCH("Gaming Chair", Products[Product]), XMATCH("Cost", Products[#Headers]))
- Premier
XMATCH(...): récupère la position de la ligne ; - Deuxième
XMATCH(...): récupère la position de la colonne ; INDEX(...): retourne la valeur à l'intersection.
Cela crée un système de recherche ligne-colonne entièrement dynamique.
Modifiez à la fois les valeurs de produit et de colonne dans la formule.
Vérifiez que le résultat se met à jour dynamiquement en fonction de la combinaison de ligne et de colonne sélectionnée.
1. Quel est le rôle principal de MATCH dans la combinaison INDEX/MATCH ?
2. Pourquoi INDEX est-il nécessaire lors de l'utilisation de MATCH ?
3. Quel est l'avantage principal d'utiliser INDEX avec XMATCH pour des recherches bidimensionnelles ?
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion