Aller au contenu

Fonction RECHERCHEX

Excel Fonction RECHERCHEX

Vous travaillez sur un tableau de données Excel et vous avez besoin de trouver une valeur spécifique ? La fonction RECHERCHEX est idéale pour cela : elle vous permet de rechercher une valeur dans un tableau et de renvoyer la valeur correspondante.

Elle fait certainement partie des fonctions d'Excel qui sont sous-utilisées. Par habitude, certains utilisent encore des fonctions plus complexes comme la combinaison INDEX + EQUIV, ou RECHERCHEV. Nous allons pourtant voir dans que la fonction RECHERCHEX est la fonction la plus performante et la plus simple à utiliser.

Qu'est-ce que la fonction RECHERCHEX ?

La fonction RECHERCHEX cherche une valeur dans une colonne d'un tableau puis retourne la valeur correspondante présente dans une autre colonne, sur la même ligne.

Imaginons que nous disposons d'un tableau qui liste l'ensemble des pays du monde, la superficie et le nombre d'habitants. Nous cherchons le moyen de trouver, pour un pays donné le continent ou la superficie :

Excel : RECHERCHEX - principe de fonctionnement

La fonction RECHERCHEX va chercher le nom du pays puis se décaler dans la colonne voulue et renvoyer la valeur de la cellule correspondante.

RECHERCHEX fonctionne également horizontalement. La fonction peut chercher une valeur dans une ligne, puis renvoyer la valeur correspondante présente dans la même colonne, sur une autre ligne :

Excel : RECHERCHEX - fonctionnement horizontal

Comment utiliser RECHERCHEX ?

Vous vous demandez quels sont les arguments de la fonction RECHERCHEX ? Voici sa syntaxe simplifiée :

=RECHERCHEX(valeur_cherchée, tableau_recherche, tableau_renvoyé)

Par exemple, pour trouver la population du nom du pays entré dans la cellule G2, la formule serait :

=RECHERCHEX(G2;B:B;D:D)

Excel : RECHERCHEX - formule simple, vers la droite

L'avantage de la fonction RECHERCHEX sur RECHERCHEV est qu'on peut indistinctement effectuer renvoyer une valeur située à gauche ou à droite. Pour trouver le continent sur lequel se situe un pays présent dans notre tableau, la formule serait :

=RECHERCHEX(G2;B:B;A:A)

Excel : RECHERCHEX - formule simple, vers la gauche

Les paramètres optionnels de RECHERCHEX

Que faire si RECHERCHEX ne trouve pas la valeur cherchée ?

Par défaut, RECHERCHEX renvoie #N/A si elle ne trouve pas la valeur cherchée. Vous pouvez préciser un paramètre supplémentaire qui sera renvoyé en cas d'erreur de recherche. Cela peut être un nombre (par exemple : 0), une chaine de caractères (par exemple : "Non trouvé" ou "-") ou une référence de cellule (par exemple : A5).

Excel : RECHERCHEX - valeur si non trouvé

Comment utiliser RECHERCHEX avec les caractères génériques ?

Le 5e paramètre de la fonction RECHERCHEX permet de préciser le mode de correspondance.
Il existe 4 modes, numérotés de -1 à 2 :

0Par défaut, RECHERCHEX recherche une correspondance exacte de la valeur cherchée et retourne #N/A s'il ne la trouve pas.
-1Si aucune correspondance exacte n'est trouvé, RECHERCHEX renvoie l'élément inférieur suivant.
1Si aucune correspondance exacte n'est trouvée, RECHERCHEX renvoie l'élément supérieur suivant.
2Une correspondance générique : ce mode vous permet d'utiliser les caractères génériques * et ? (aussi appelés jokers). Le point d'interrogation remplace tout caractère unique (par exemple, USB ?.0 trouve USB 2.0 et USB 3.0), alors que l'astérisque remplace un nombre quelconque de caractères (par exemple, tabl* trouve table et tableau).

Si on veut utiliser les caractères jokers dans notre recherche, il faut donc utiliser le mode 2 :

=RECHERCHEX(G2;B:B;D:D; "- ;2)

Excel : RECHERCHEX - recherche générique

Comment effectuer une RECHERCHEX en commençant par le bas ?

Le 6e paramètre de la fonction RECHERCHEX permet de préciser le mode de recherche.
Il existe 4 modes, numérotés de -1 à 2 :

1Par défaut, RECHERCHEX effectue une recherche à partir du premier élément du tableau de recherche.
-1Recherche inversée en commençant par le dernier élément du tableau de recherche
2Recherche binaire par ordre croissant (attention : si le tableau n'est pas trié, RECHERCHEX renvoie un résultat erroné !)
-2Recherche binaire par ordre décroissant (attention : si le tableau n'est pas trié, RECHERCHEX renvoie un résultat erroné !)

Si on veut réaliser une recherche en commençant par le bas, il faut donc utiliser le mode -1 :

=RECHERCHEX(G2;B:B;D:D; "- ;;-1)

Bonus 1 : comment obtenir les valeurs de plusieurs colonnes en même temps ?

RECHERCHEX peut renvoyer des valeurs multiples. Pour récupérer en une seule étape la superficie et la population dans notre tableau, il suffit d'écrire la formule suivante :

=RECHERCHEX(G2;B:B;C:D)

En retour, RECHERCHEX va renvoyer un résultat qui s'affiche sur plusieurs cellules (un cadre bleu ombré entoure la plage de cellules lorsque la cellule active est positionnée sur la formule) : la superficie dans la première, la population dans la seconde.

Excel : RECHERCHEX - valeurs multiples

Bonus 2 : comment trouver une correspondance verticale et horizontale ?

Il est possible d'effectuer une RECHERCHEX imbriquée pour trouver à la fois une correspondance verticale et une correspondance horizontale.

Dans l'exemple suivant, on utilise RECHERCHEX pour trouver la ligne du nom du pays dans la colonne A, puis on cherche la colonne du PIB par habitant. La deuxième recherche est imbriquée dans la première, à la place du paramètre tableau_renvoyé. La formule est :

=RECHERCHEX("Danemark ;A2:A30;RECHERCHEX("PIB par habitant ;B1:I1;B2:I30))

Excel : RECHERCHEX - recherches horizontales et verticales imbriquées

Bonus 3 : comment faire une RECHERCHEX multicritères ?

Vous souhaitez faire une RECHERCHEX avec plusieurs critères ou conditions, portant sur plusieurs données ? C'est tout à fait possible !

Voici la syntaxe à utiliser :

RECHERCHEX(1;critères;tableau_renvoyé)

Chaque critère est saisi entre parenthèse. Il fait référence à la plage de recherche à laquelle on applique une condition. Voici des exemples de critères

(A1:A100="Agence 1")

(B1:B100="Vendeur 5")

(C1:C100>3000)

Les critères se combinent entre eux avec les opérateurs * (ET) et + (OU). Pour trouver la première vente du vendeur 3 supérieure à 3000 euros, on écrira :

(B1:B100="Vendeur 3")*(C1:C100>3000)

Dans l'exemple suivant, on cherche le prix dont le code produi est 3698WOS à la date du 01/01/2022 (attention : la colonne date doit être classée par ordre croissant) :

=RECHERCHEX(1;(A:A=E2)*(B:B=F2);C:C;"-")

Excel : RECHERCHEX multicritères

RECHERCHEX ne fonctionne pas ?

Vous êtes peut-être confronté à une erreur en utilisant RECHERCHEX. Voici les valeurs d'erreur les plus courantes :

  • #N/A : la valeur cherchée n'a pas été trouvée dans le tableau de recherche.
  • #VALEUR! : la plage dans laquelle se trouvent la valeur à retourner n'a pas la même dimension que la plage des données à chercher.

Pour en savoir plus sur les erreurs renvoyées par les fonctions d'Excel, lisez cet article !

Conclusion : RECHERCHEX, RECHERCHEV, RECHERCHEH ou INDEX/EQUIV ?

Pas d'hésitation : RECHERCHEX est la fonction de recherche la plus simple à utiliser et la plus polyvalente, avec seulement 3 paramètres obligatoires.

Avec RECHERCHEV, les valeurs renvoyées doivent obligatoirement être situées à droite de la valeur cherchée, ce que n'impose pas RECHERCHEX.

De plus, RECHERCHEX permet d'effectuer des recherches avec les caractères génériques ? et *.

En outre, le résultat n'est pas limité au contenu d'une seule cellule, il peut contenir des valeurs multiples. Si aucune valeur n'a été trouvée, il est possible de définir un résultat personnalisé, au lieu de devoir gérer une erreur #N/A.

Enfin, RECHECHEX peut effectuer des recherches verticales ou horizontales, au contraire de RECHERCHEV et RECHERCHEH qui sont limitées à une orientation particulière.

Planète Excel