Excel Formulas Academy · Leçon

Combiner INDEX et MATCH

Utilisez MATCH pour transmettre une position à INDEX dans une recherche dynamique.

Leçon 3 sur 413 étapes

Combiner INDEX et MATCH est une leçon Excel Formulas Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Excel Formulas Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Excel Formulas Academy comprend 4 leçons au total.

Le duo parfait

Vous connaissez maintenant les deux moitiés d’une recherche. MATCH trouve où se situe une valeur, et INDEX renvoie la valeur à une position donnée.

Combinez-les et vous obtenez une recherche complète : MATCH localise la ligne, puis INDEX récupère les données de cette ligne dans la colonne de votre choix.

Le principe est simple dès que vous l’avez compris : placez MATCH à l’intérieur d’INDEX, à l’endroit où le numéro de ligne est normalement indiqué.

Le modèle essentiel

Voici la structure que vous réutiliserez encore et encore :

=INDEX(return_range, MATCH(lookup_value, lookup_range, 0))

Lisez-la de l’intérieur vers l’extérieur. MATCH s’exécute en premier et renvoie un numéro de position. Ce nombre devient ensuite le numéro de ligne d’INDEX, qui renvoie la valeur de votre plage de résultat.

La plage de résultat et la plage de recherche comportent généralement le même nombre de lignes, de sorte qu’une position dans l’une corresponde à la même ligne dans l’autre.

=INDEX(C2:C20, MATCH("Cherry", A2:A20, 0))

Exemple pas à pas

Imaginez un tableau où la colonne A contient des noms de produits et la colonne C des prix. Vous voulez connaître le prix de la "cerise".

Commencez par demander à MATCH de trouver la cerise : =MATCH("Cherry", A2:A20, 0) renvoie, par exemple, 3.

INDEX utilise ensuite ce 3 : =INDEX(C2:C20, 3) renvoie le prix de la 3e ligne de la colonne C.

Imbriquez les deux fonctions et vous obtenez le résultat en une seule fois : =INDEX(C2:C20, MATCH("Cherry", A2:A20, 0)).

=INDEX(C2:C20, MATCH("Cherry", A2:A20, 0))

Utiliser une cellule comme valeur de recherche

Écrire "Cerise" en dur convient pour apprendre, mais les formules réelles font plutôt référence à une cellule. Saisissez le terme recherché dans E1 et faites-y référence.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Désormais, quel que soit le produit que vous saisissez dans E1, son prix s’affiche instantanément. Saisissez Banane et vous obtenez le prix de la banane ; saisissez Datte et la réponse se met à jour.

Une seule formule devient un outil de recherche réutilisable, entièrement piloté par la cellule de saisie.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Rechercher vers la gauche

Voici l’astuce qui rend INDEX-MATCH si particulier. La colonne de recherche et la colonne de renvoi sont indépendantes : la valeur renvoyée peut donc se trouver à gauche de la valeur recherchée.

Supposons que les prix se trouvent dans la colonne A et les noms des produits dans la colonne C. Pour trouver le prix d’un produit à partir de son nom, écrivez =INDEX(A2:A20, MATCH(E1, C2:C20, 0)).

Vous avez effectué la recherche dans la colonne C, mais vous avez renvoyé la valeur depuis la colonne A. VLOOKUP ne peut pas le faire sans aide.

=INDEX(A2:A20, MATCH(E1, C2:C20, 0))

Renvoyer un champ différent

La plage de renvoi détermine ce que vous récupérez. En recherchant avec la même clé, vous pouvez récupérer n’importe quelle colonne, simplement en modifiant la plage passée à INDEX.

Pour trouver l’adresse e-mail d’un client : =INDEX(D2:D50, MATCH(E1, A2:A50, 0)).

Pour trouver plutôt la ville de ce même client : =INDEX(F2:F50, MATCH(E1, A2:A50, 0)).

La partie MATCH reste identique ; seule la plage passée à INDEX change pour choisir un résultat différent.

=INDEX(F2:F50, MATCH(E1, A2:A50, 0))

Aperçu d’une recherche à deux dimensions

Vous pouvez également fournir à INDEX un numéro de colonne, obtenu grâce à une deuxième occurrence de MATCH. Cela permet de cibler une valeur à l’intersection d’une ligne et d’une colonne.

=INDEX(B2:E10, MATCH(G1, A2:A10, 0), MATCH(G2, B1:E1, 0))

La première occurrence de MATCH trouve la ligne à partir des libellés de A, et la seconde trouve la colonne à partir des en-têtes de la ligne 1. INDEX renvoie la cellule située à leur intersection. Ce modèle avancé sera étudié en détail plus loin.

=INDEX(B2:E10, MATCH(G1, A2:A10, 0), MATCH(G2, B1:E1, 0))

Aligner les plages

Pour que les positions coïncident, la plage de recherche et la plage de renvoi doivent commencer sur la même ligne et avoir la même hauteur.

Si MATCH recherche A2:A20 (19 lignes), mais qu’INDEX renvoie une valeur depuis C2:C19 (18 lignes), les positions se décalent et vous obtenez un résultat incorrect.

Une habitude fiable consiste à utiliser exactement la même plage de lignes pour les deux, par exemple A2:A20 et C2:C20. Les références à des colonnes entières, comme A:A et C:C, restent également alignées automatiquement.

=INDEX(C:C, MATCH(E1, A:A, 0))

Gérer une correspondance introuvable

Si MATCH ne trouve pas la valeur recherchée, il renvoie #N/A et l’ensemble d’INDEX-MATCH affiche cette erreur. Entourez la formule de IFNA pour prévoir une valeur de remplacement.

=IFNA(INDEX(C2:C20, MATCH(E1, A2:A20, 0)), "Not found")

À présent, un produit introuvable affiche le texte « Introuvable » au lieu d’une erreur inquiétante. IFERROR fonctionne aussi, mais IFNA cible uniquement le cas où la valeur est introuvable et laisse apparaître les autres erreurs.

=IFNA(INDEX(C2:C20, MATCH(E1, A2:A20, 0)), "Not found")

Une formule complète et réaliste

Rassemblons tous les éléments. Vous disposez d’un tableau d’employés : les ID se trouvent dans la colonne A, les noms dans B, les services dans C et les salaires dans D. Un utilisateur saisit un ID dans G1.

Pour renvoyer le service de cet employé : =INDEX(C2:C200, MATCH(G1, A2:A200, 0)).

Pour renvoyer plutôt son salaire, remplacez la plage d’INDEX par D2:D200. La logique de recherche ne change jamais ; seule la colonne dont vous lisez les valeurs change. C’est l’outil de référence au quotidien pour les recherches dynamiques.

=INDEX(D2:D200, MATCH(G1, A2:A200, 0))

Pourquoi la lecture de l’intérieur vers l’extérieur est utile

Lorsqu’une formule semble intimidante, évaluez-la comme le fait le tableur, en partant de la fonction la plus imbriquée vers l’extérieur.

Pour =INDEX(C2:C20, MATCH(E1, A2:A20, 0)) : commencez par lire MATCH(E1, A2:A20, 0), imaginez que cette fonction renvoie un nombre comme 5, puis remplacez-la mentalement pour obtenir =INDEX(C2:C20, 5).

Tout à coup, la formule signifie simplement « renvoyer le 5e prix ». Cette habitude permet de déboguer facilement toute recherche imbriquée.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))

Vérification rapide

Vérifiez que vous avez compris comment les deux fonctions se combinent.

Récapitulatif : INDEX + MATCH

Vous avez combiné les deux fonctions pour créer une recherche flexible :

  • Modèle : =INDEX(return_range, MATCH(lookup_value, lookup_range, 0))
  • MATCH trouve la position de la ligne ; INDEX renvoie la valeur à cette position
  • Les colonnes de recherche et de renvoi sont indépendantes, ce qui vous permet de rechercher à gauche aussi facilement qu’à droite
  • Conservez la même hauteur pour les deux plages et entourez la formule de IFNA pour gérer proprement les erreurs

Ensuite, découvrez précisément pourquoi cette méthode est souvent meilleure que VLOOKUP.

=INDEX(C2:C20, MATCH(E1, A2:A20, 0))
Gratuit pour commencer

Apprends Excel avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
30
Leçons
120

Questions Fréquemment Posées

La leçon « Combiner INDEX et MATCH » est-elle gratuite ?

Oui — le texte complet de « Combiner INDEX et MATCH » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Excel Formulas Academy, passe à CoddyKit PRO. Le cours Excel Formulas Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Combiner INDEX et MATCH » ?

Utilisez MATCH pour transmettre une position à INDEX dans une recherche dynamique. Tu pratiques Excel Formulas Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Excel Formulas Academy ?

Aucune expérience préalable n'est requise. Excel Formulas Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Combiner INDEX et MATCH » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Excel Formulas Academy ?

Oui. Chaque leçon Excel Formulas Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Extraire des valeurs avec INDEX
  2. Trouver des positions avec MATCH
  3. Combiner INDEX et MATCH
  4. Pourquoi INDEX-MATCH est plus efficace que VLOOKUP
← Retour à Excel Formulas Academy