Aller au contenu principal

Fonctions de recherche

MOS Excel (Microsoft 365)Fonctions de base et avancées

Fonctions de recherche

Définition

Les fonctions de recherche retrouvent une valeur dans une table à partir d'une clé : RECHERCHEX, RECHERCHEV et RECHERCHEH renvoient une valeur associée, EQUIV donne une position et INDEX lit une valeur à une position donnée. RECHERCHEX est la fonction moderne recommandée par Microsoft et largement testée dans MO-211.

Les fonctions de recherche

Fonction Syntaxe Description
RECHERCHEX (XLOOKUP) =RECHERCHEX(valeur;tableau_recherche;tableau_renvoye;[si_non_trouve];[mode_correspondance];[mode_recherche]) Cherche une valeur et renvoie une valeur d'une autre colonne
RECHERCHEV (VLOOKUP) =RECHERCHEV(valeur;table;n_colonne;[valeur_proche]) Recherche verticale dans la première colonne de la table
RECHERCHEH (HLOOKUP) =RECHERCHEH(valeur;table;n_ligne;[valeur_proche]) Recherche horizontale dans la première ligne de la table
EQUIV (MATCH) =EQUIV(valeur;plage;[type]) Renvoie la position d'une valeur dans une plage
INDEX =INDEX(plage;n_ligne;[n_colonne]) Renvoie la valeur à une position donnée

RECHERCHEX

RECHERCHEX cherche dans une colonne et renvoie la valeur de la même ligne dans une autre colonne. Elle fait la correspondance exacte par défaut, sait chercher vers la gauche, et accepte un message quand la valeur n'existe pas :

=RECHERCHEX(D2;A2:A10;B2:B10;"Article introuvable")

Exemple de la fonction RECHERCHEX pour renvoyer un nom et un service à partir d'un identifiant (Microsoft Support)

Le mode correspondance 0 impose l'exact, 1 l'approximatif inférieur, -1 l'approximatif supérieur, et 2 les jokers. Le mode recherche -1 part de la fin. Une recherche sans correspondance renvoie #N/A si le 4e argument est omis.

RECHERCHEX : chercher Souris dans la colonne A, renvoyer son prix dans la colonne B

RECHERCHEV et ses limites

RECHERCHEV cherche dans la première colonne de la table et renvoie une colonne située à droite, numérotée à partir de 1. Elle ne peut pas renvoyer une colonne à gauche de la colonne de recherche, ni chercher sur plusieurs colonnes. Le 4e argument vaut FAUX pour une correspondance exacte, VRAI ou omis pour une correspondance approximative, qui exige une table triée. Dans Microsoft 365, la correspondance exacte est le défaut.

=RECHERCHEV("Martin";A2:B10;2;FAUX)

EQUIV et INDEX

EQUIV renvoie la position d'une valeur dans une plage : =EQUIV("Martin";A2:A10;0) renvoie la ligne relative où se trouve Martin. Le type 0 impose l'exact, 1 la plus grande valeur inférieure ou égale, -1 la plus petite valeur supérieure ou égale. INDEX lit la valeur d'une plage à une position donnée : =INDEX(B2:B10;3) renvoie la 3e valeur de B2:B10. La combinaison INDEX et EQUIV remplace RECHERCHEV quand la valeur à renvoyer se trouve à gauche :

=INDEX(A2:A10;EQUIV("X";B2:B10;0))

Exemple concret

Une table des prix en A2:B3 contient Clavier à 25 et Souris à 12.

=RECHERCHEX("Souris";A2:A3;B2:B3;"Introuvable")  renvoie 12
=RECHERCHEX("Clé USB";A2:A3;B2:B3;"Introuvable") renvoie Introuvable
=RECHERCHEV("Clavier";A2:B3;2;FAUX)              renvoie 25