Cet article fera plaisir au fans des fonctions d’Excel. En effet, il traitera de la nouvelle fonction RECHERCHEX qui est en train d’être déployée par Microsoft. Plus précisément, elle est actuellement disponible pour les personnes ayant souscrit un abonnement Office 365 professionnel avec un canal de mise à jour mensuel. Pour les clients ayant choisi le canal de mise à jour semi-annuel, cette nouvelle fonction sera disponible en juillet.
Cette fonction est l’évolution de la fonction existante RECHERCHEV. Cette dernière existe depuis 35 ans maintenant et est la troisième fonction la plus utilisée après les fonctions SOMME et MOYENNE. RECHERCHEX a été nommée du fait qu’elle peut faire une recherche à la fois verticale mais aussi horizontale. De ce fait, elle remplace également la fonction RECHERCHEH. Les deux fonctions RECHERCHEV et RECHERCHEH vont continuer à fonctionner mais Microsoft conseille d’utiliser la nouvelle fonction qui est plus simple et plus efficace (cf. les limitations ci-dessous).
Mais rentrons dans le vif. Voilà à quoi ressemble la construction de la fonction :
RECHERCHEX(valeur_cherchée;tableau_recherche;tableau_renvoyé;[si_non_trouvé];[mode_correspondance];[mode_recherche])
Décortiquons cette fonction :
- Valeur_cherchée : ce que vous voulez chercher
- Tableau_recherche : Où il faut chercher
- Tableau_renvoyé : Où se trouve la valeur à vous retourner
- [si_non_trouvé] : ce qu’il faut retourner si on ne trouve aucun résultat
- [mode_correspondance] : le type de correspondance recherché (voir ci-dessous)
- [mode_recherche] : le type de recherche à faire (voir ci-dessous)
Pour le mode de correspondance, vous avez quatre types à choix :
- 0 : correspondance exacte
- -1 : correspondance exacte ou le prochain objet plus petit
- 1 : correspondance exacte ou le prochain objet plus grand
- 2 : correspondance générique dans laquelle « ? » correspond à n’importe quel caractère et « * » à n’importe quelle chaîne de caractères
En ce qui concerne le type de recherche, il y a également quatre possiblités :
- 1 : recherche du premier au dernier
- -1 : recherche du dernier au premier
- 2 : recherche dichotomique (avec un tri ascendant)
- -2 : recherche dichotomique (avec un tri descendant)
Dans sa forme la plus simple, RECHERCHEX n’a besoin que des trois premiers arguments ci-dessus, ce qui en fait même un de moins que RECHERCHEV. D’ailleurs, vous vous demandez peut-être pourquoi avoir créé une nouvelle fonction de recherche alors que RECHERCHEV était si répandue et utilisée. Et bien, c’est pour régler certaines limitations de cette ancienne fonction telles que :
- La recherche d’un terme exact : en effet, pour pouvoir le faire, il fallait ne pas oublier le quatrième paramètre de RECHERCHEV, ce qui arrivait fréquemment. Si vous l’oubliiez, vous aviez beaucoup de chances de trouver la mauvaise réponse.
- L’ajout et la suppression de colonnes : Le troisième paramètre de RECHERCHEV était le numéro de colonne que vous souhaitez retourner. Comme c’est un nombre, vous deviez le modifier lors de l’ajout ou de la suppression de colonnes.
- Impossible de rechercher à gauche : RECHERCHEV regarde dans une colonne et donne un retour par rapport à une colonne à sa droite. Il fallait donc redisposer les données afin d’avoir les valeurs de retour toujours à droite de la colonne de recherche.
- Impossible de rechercher depuis le bas : Pour trouver la dernière occurrence vous deviez inverser l’ordre des données
- Impossible de rechercher le prochain objet plus grand : lors d’une recherche « approximative », seul le prochain objet plus petit pouvait être retourné et seulement s’il était correctement classé.
- Référencer plus de cellules que nécessaire : le deuxième paramètre de RECHERCHEV était étendu de la colonne de recherche jusqu’à la colonne de résultats. Le fait de référencer des cellules qui ne servaient à rien et d’effectuer des calculs inutiles diminuait la performance des classeurs.
Exemples
Vu la force de l’outil, nous pourrions imaginer beaucoup d’exemples mais nous allons vous en proposer deux qui montrent les possibilités qui nous sont offertes.
Dans le premier exemple, nous allons récupérer des informations de nos collaborateurs. Pour cela nous tapons l’identifiant du collaborateur dans la cellule « E2 » et la fonction va parcourir la colonne « ID Collab » du tableau qui nous intéresse et, lorsqu’elle trouve une correspondance, renvoie le contenu de la cellule équivalente de la colonne « Nom ». On voit ensuite que s’il n’y a pas de résultat, on renvoie le message « Collaborateur non trouvé ». Pour les deux derniers paramètres, le 0 indique une correspondance exacte et le 1 demande une recherche du premier au dernier élément.

Dans notre deuxième exemple, nous allons voir selon une tabelle quel est le rabais à octroyer selon le montant total de la facture. On remarque également dans cet exemple que la fonction utilise soit la notation habituelle des cellules (B8, par exemple), soit la colonne du tableau ( Tableau1[Rabais], dans notre exemple). Nous pouvons voir les mêmes éléments que dans notre premier exemple mais avec un comportement particulièrement intéressant. En effet, notre facture a un montant de 7’779 qui se situe entre deux jalons pour nos rabais. En paramétrant la correspondance à -1, nous demandons à la fonction de choisir la correspondance exacte ou le prochain élément plus petit. Cela fait que c’est 5’000 qui est sélectionné et donc un rabais de 5%.

EQUIVX
En plus de RECHERCHEX, Microsoft a rajouté EQUIVX qui est très ressemblante à RECHERCHEX mais qui permet de récupérer l’index de la correspondance. EQUIVX est également plus simple et efficace que son prédécesseur EQUIV.
EQUIVX(valeur_cherchée; tableau_recherche; [mode_correspondance]; [mode_recherche])
Voilà de nouvelles fonctions qui nous permettent d’être encore plus performants avec Excel.