Fonction Excel : RECHERCHE_X
La fonction Excel RECHERCHE_X recherche une valeur dans une plage de cellules et renvoie une valeur à la même position dans une autre plage de cellules.
Utilisation :
=RECHERCHE_X(valeur_cherchée, plage_recherche, plage_résultat)
ou
=RECHERCHE_X(valeur_cherchée, plage_recherche, plage_résultat, si_aucun_résultat, occurrence, sens, correspondance)
Exemple d'utilisation
La fonction RECHERCHE_X peut remplacer à elle seule toutes les fonctions suivantes : RECHERCHEV, RECHERCHEH et la combinaison INDEX + EQUIV.
Par exemple, pour rechercher ici le numéro de dossier en fonction du lieu, les fonctions INDEX + EQUIV peuvent être utilisées :
=INDEX(A2:C11;EQUIV(E2;B2:B11;0);1)

Le même résultat peut être obtenu beaucoup plus simplement en utilisant RECHERCHE_X :
=RECHERCHE_X(E2;B2:B11;A2:A11)


Pour afficher le nombre de points, utilisez la même formule et modifiez "plage_résultat" :
=RECHERCHE_X(E2;B2:B11;C2:C11)

Plus d'informations
La fonction Excel RECHERCHE_X est une alternative à la fonction RECHERCHEX d'Excel qui n'est disponible qu'avec les toutes dernières versions d'Excel. RECHERCHE_X est en revanche compatible avec toutes les versions d'Excel.
Bien que le fonctionnement de base de la fonction RECHERCHE_X soit le même que celui de la fonction d'Excel RECHERCHEX, elle ne dispose pas exactement des mêmes options.
Voici ce que la fonction RECHERCHE_X permet :
- Recherche en utilisant des plages de cellules verticales et/ou horizontales
- "si_aucun_résultat" : possibilité de définir une valeur à retourner si aucun résultat (par défaut, l'erreur #N/A)
- "occurrence" : possibilité de définir l'occurrence à renvoyer (par exemple, si défini à 3 les 2 premiers résultats seront ignorés, seul le 3e résultat sera retourné)
- "sens" : possibilité de choisir le sens de recherche :
- 1 (ou non renseigné) : recherche depuis le début
- -1 : recherche depuis la fin
- "correspondance" : possibilité de choisir le mode de recherche :
- 0 (ou non renseigné) : recherche de la valeur exacte
- 1 : recherche à l'aide de métacaractères tels que * ? # [ ] (voir les exemples avec Like pour mieux comprendre)
- 2 : recherche à l'aide d'une expression régulière (voir ce tutoriel sur les expressions régulières en cas de besoin)
Afficher une valeur si pas de résultat
Pour afficher une valeur si aucun résultat n'a été trouvé, renseignez le 4e argument "si_aucun_résultat" :
=RECHERCHE_X(E2;B2:B11;A2:A11;"-")

Choisir l'occurrence
Par défaut, la première occurrence est retournée :

Pour retourner par exemple la 2e occurrence, renseignez le 5e argument "occurrence" :
=RECHERCHE_X(E2;B2:B11;A2:A11;"";2)

Dans ce cas, la valeur retournée correspond au 2e résultat de la recherche "Londres".
Choisir le sens de recherche
Par défaut, la recherche se fait de haut en bas (ou de gauche à droite).
Pour inverser le sens, entrez la valeur -1 dans le 6e argument "sens" :
=RECHERCHE_X(E2;B2:B11;A2:A11;"";1;-1)

Dans ce cas, la valeur retournée correspond à la première occurrence de "Londres" en partant du bas.
Choisir le mode de recherche
Par défaut, la valeur exacte doit être trouvée par la fonction.
Pour rechercher par exemple un mot contenant la valeur en
, entrez la valeur recherchée *en*
(voir les exemples avec Like pour mieux comprendre) et définissez le 7e argument "correspondance" à 1 pour utiliser ce mode de recherche :
=RECHERCHE_X(E2;B2:B11;A2:A11;"";1;1;1)

Vous avez également la possibilité d'effectuer une recherche à l'aide d'une expression régulière (voir ce tutoriel sur les expressions régulières en cas de besoin), dans ce cas définissez le 7e argument "correspondance" à 2 :
=RECHERCHE_X(E2;B2:B11;A2:A11;"";1;1;2)

Lister les résultats grâce à "occurrence"
Pour lister tous les résultats, commencez par ajouter les $
utiles à la recopie puis définissez la valeur de l'argument "occurrence" à l'aide de la fonction LIGNE.
Dans ce cas LIGNE()-5
renverra 1 (puisque la ligne = 6) et retournera donc la première occurrence :
=RECHERCHE_X(E$2;B$2:B$11;A$2:A$11;"";LIGNE()-5)

Il suffira ensuite d'étirer la formule vers le bas pour obtenir tous les résultats (puisque l'occurrence augmente de 1 à chaque ligne) :

Remarque : cette fonction nécessite l'installation du pack de fonctions XLP (un add-in gratuit pour Excel qui ajoute 92 nouvelles fonctions).