Principe : La formule INDEX permet de renvoyer une valeur située dans une table de données en fonction d’un numéro de ligne et d’un numéro de colonne.
= INDEX(matrice ; no_lig ; [no_col])
- Plage de cellules dans laquelle on souhaite renvoyer la valeur en fonction du numéro de ligne et de colonne.
- Le numéro de ligne à utiliser pour renvoyer la valeur dans la matrice.
- [Facultatif] : Le numéro de colonne à utiliser pour renvoyer la valeur dans la matrice.
Remarque : Cette formule s’utilise principalement combinée avec la formule EQUIV.
Exemple 1 : On a un tableau avec une liste d’immatriculations avec plusieurs informations les concernant ; On souhaite retrouver le propriétaire de l’immatriculation « XP30DM ».
=> Pour retrouver le résultat il faut combiner les formules INDEX et EQUIV.
= INDEX(B2:B6 ; EQUIV(« XP30DM » ; A2:A6 ; 0)) = Marie
> L’immatriculation « XP30DM » est retrouvée à la ligne 2 à partir de la première cellule de la matrice de recherche (A2) de la formule EQUIV.
> Il n’est pas nécessaire de renseigner le numéro de colonne (argument facultatif) puisque la matrice ne comporte qu’une seule colonne (colonne B).
=> La formule INDEX renvoie donc la valeur située à la ligne 2 de la matrice B2:B6.
=> Le résultat renvoyé est le même qu’avec la formule RECHERCHEV pour une correspondance exacte = FAUX ou 0.
Exemple 2 : Suite de l’exemple 2 sur la formule EQUIV : On a une liste de clients et on souhaite déterminer le taux de remise à appliquer en fonction du total des ventes HT.
=> Pour retrouver le résultat il faut combiner les formules INDEX et EQUIV.
= INDEX($B$3:$B$6 ; EQUIV(E2;$A$3:$A$6;1) ; 1)
=> Le numéro de colonne est statique puisqu’on recherche dans une seule colonne donc soit on précise 1 pour le numéro de colonne soit on ne renseigne pas cet argument qui est dans ce cas inutile.
=> Le résultat renvoyé est le même qu’avec la formule RECHERCHEV pour une correspondance approximative = VRAI ou 1.
Exemple 3 : Suite de l’exemple 3 sur la formule EQUIV : On a une liste de commerciaux et on souhaite retrouver le montant de la prime à octroyer en fonction du taux de service.
=> Pour retrouver le résultat il faut combiner les formules INDEX et EQUIV.
Formule en cellule F2 :
= INDEX($B$3:$B$6 ; EQUIV(E2;$A$3:$A$6;-1) ; 1)
=> Le numéro de colonne est statique puisqu’on recherche dans une seule colonne donc soit on précise 1 pour le numéro de colonne soit on ne renseigne pas cet argument qui est dans ce cas inutile.
=> La formule RECHERCHEV ne peut pas faire de recherche à partir de barème décroissant.
Exemple 4 : On a un tableau avec une liste d’immatriculations avec plusieurs informations les concernant ; On souhaite retrouver une information dans le tableau en fonction de 2 paramètres : L’immatriculation et le type d’information.
Formule en cellule B3 :
Possibilité 1 = INDEX(A5:E14 ; EQUIV(B1;A5:A14;0) ; EQUIV(B2;A5:E5;0))
Possibilité 2 = INDEX(B6:E14 ; EQUIV(B1;A6:A14;0) ; EQUIV(B2;B5:E5;0))
> L’immatriculation « KJP-523-LMP » est retrouvée à la ligne 5 à partir de la première cellule de la matrice de recherche (A6) de la 1ère formule EQUIV.
> L’information « N° de dossier » est retrouvée à la colonne 3 à partir de la première cellule de la matrice de recherche (B5) de la 2nde formule EQUIV.
=> La formule INDEX renvoie donc la valeur située au croisement de la ligne 5 et de la colonne 3 de la matrice B6:E14.
=> La formule RECHERCHEV ne peut pas faire de recherche avec en même temps des critères en ligne et en colonne.
Remarque : Pour retrouver la bonne valeur mieux vaut appliquer la méthode de la « Possibilité 1 » : Dans ce cas la « matrice » de la formule INDEX et les matrice_recherche » des formules EQUIV doivent avoir le même point de départ (cellule A5 dans l’exemple).
=> Voir aussi la formule EQUIV