RECHERCHEX : la formule qui remplace enfin RECHERCHEV
Pendant trente ans, RECHERCHEV a été la formule de recherche la plus utilisée d'Excel — et la plus génératrice de bugs. En 2019, Microsoft a sorti son successeur officiel : RECHERCHEX. Plus puissante, plus simple, plus robuste. Ce guide vous explique pourquoi elle change tout, et comment l'adopter dès aujourd'hui.
⚠️ Pourquoi RECHERCHEV pose problème
RECHERCHEV (VLOOKUP en anglais) est née dans les années 1985. À l'époque, c'était une formidable innovation. Mais elle traîne aujourd'hui plusieurs défauts structurels que les utilisateurs avancés connaissent bien :
- Recherche uniquement vers la droite : la valeur cherchée doit toujours être dans la première colonne du tableau de référence. Vous voulez chercher le nom d'un client à partir de son code, mais le nom est à gauche du code ? Impossible.
- Index numérique fragile : vous indiquez « renvoyer la 3ème colonne ». Si quelqu'un insère une colonne au milieu de la table, votre formule pointe désormais vers le mauvais champ. Sans erreur affichée. Silencieusement faux.
- Pas de gestion native du « non trouvé » : si la valeur cherchée n'existe pas, RECHERCHEV renvoie un disgracieux
#N/A. Il faut systématiquement l'encapsuler dans SIERREUR. - 4ème argument piégeux : si on oublie de mettre
FAUX(ou0) en correspondance exacte, RECHERCHEV bascule en mode approximatif et produit n'importe quoi sur une table non triée. - Performance moyenne : sur de grandes plages, RECHERCHEV n'est pas le champion de la rapidité.
Des millions d'heures professionnelles sont perdues chaque année à corriger des bugs de RECHERCHEV. Microsoft en avait conscience.
À retenir : RECHERCHEV n'est pas « cassée », mais elle a 35 ans. Comme un téléphone à clapet, elle fonctionne — il y a juste mieux maintenant.
💡 Pourquoi Microsoft a créé RECHERCHEX
En janvier 2019, Microsoft annonce RECHERCHEX (XLOOKUP). L'objectif officiel : « offrir une fonction de recherche unique, plus puissante et plus simple à utiliser que RECHERCHEV, RECHERCHEH et INDEX+EQUIV réunis ».
Les buts internes :
- Réduire massivement les bugs liés aux recherches
- Permettre une syntaxe lisible même pour un débutant
- Offrir des fonctionnalités demandées depuis 20 ans (recherche bidirectionnelle, valeur par défaut, recherche depuis la fin)
- Préparer Excel à l'ère des tableaux dynamiques
RECHERCHEX a été déployée d'abord dans Excel 365 (canal Insider en août 2019, puis grand public). Elle est arrivée dans Excel 2021 (la version perpétuelle). Elle n'est PAS disponible dans Excel 2019, 2016, 2013 ou antérieures.
📐 Syntaxe RECHERCHEX
=RECHERCHEX(valeur_cherchée; tableau_recherche; tableau_renvoyé; [si_non_trouvé]; [mode_correspondance]; [mode_recherche])
Détaillons chaque argument :
- valeur_cherchée : la valeur que vous voulez trouver (code client, nom, date…).
- tableau_recherche : la colonne (ou ligne) dans laquelle chercher cette valeur.
- tableau_renvoyé : la colonne (ou ligne) qui contient la valeur à renvoyer. PEUT être à gauche, à droite, sur une autre feuille.
- si_non_trouvé (facultatif) : message ou valeur retournée si la valeur cherchée n'existe pas. Remplace SIERREUR.
- mode_correspondance (facultatif) : 0 = exact (défaut), -1 ou 1 = approximatif inférieur/supérieur, 2 = caractères génériques (* et ?).
- mode_recherche (facultatif) : 1 = du début (défaut), -1 = de la fin, 2 ou -2 = recherche binaire (rapide sur tables triées).
🛠️ Tutoriel étape par étape
Étape 1 — Cas de base : recherche simple
Vous avez une table de clients avec ID en colonne A et Nom en colonne B. Vous cherchez le nom du client C002.
=RECHERCHEX("C002"; A2:A100; B2:B100)
→ Renvoie le nom correspondant
Trois arguments suffisent. Pas besoin de compter les colonnes, pas besoin de FAUX en 4ème position.
👉 Essayez par vous-même : modifiez le code recherché en cellule B7 (essayez P01, P03, ou un code inexistant comme P99) pour voir RECHERCHEX renvoyer le prix correspondant ou la valeur de repli « Non trouvé ».
Étape 2 — Recherche à gauche (impossible avec RECHERCHEV)
Vous cherchez l'ID à partir du nom (le nom est en colonne B, l'ID en colonne A).
=RECHERCHEX("Marie Dupont"; B2:B100; A2:A100)
→ Renvoie l'ID
RECHERCHEX se moque de l'ordre des colonnes. Vous indiquez où chercher, où renvoyer, c'est tout.
Étape 3 — Gestion du « non trouvé »
=RECHERCHEX(A2; Clients[ID]; Clients[Nom]; "Client inconnu")
Le 4ème argument remplace l'encapsulation dans SIERREUR. Si A2 n'existe pas dans la table, on affiche « Client inconnu » au lieu de #N/A.
Étape 4 — Recherche approximative (paliers tarifaires)
Vous avez une grille de tarifs par tranche de quantité. Quel prix pour 75 unités ?
| Quantité min | Prix unitaire |
|---|---|
| 1 | 10 € |
| 50 | 8 € |
| 100 | 6 € |
| 500 | 4 € |
=RECHERCHEX(75; A2:A5; B2:B5; "Hors tarif"; -1)
→ Renvoie 8 € (le palier ≤ 75)
Le 5ème argument à -1 active la correspondance « inférieure ou égale ». Pratique pour les paliers, les notes, les commissions.
Étape 5 — Dernière occurrence
Vous voulez le dernier prix payé par un client (au lieu du premier trouvé).
=RECHERCHEX("C002"; Ventes[Client]; Ventes[Prix]; ; 0; -1)
→ Renvoie le prix de la DERNIÈRE vente à ce client
Le 6ème argument à -1 active la recherche depuis la fin. RECHERCHEV ne sait pas faire ça.
Étape 6 — Recherche horizontale
Vous avez des entêtes en ligne (mois) et vous cherchez une valeur par mois.
=RECHERCHEX("Mars"; B1:M1; B2:M2)
→ Renvoie la valeur du mois de Mars dans la ligne 2
Pas besoin de RECHERCHEH séparée : RECHERCHEX gère les deux.
Étape 7 — Renvoyer plusieurs colonnes à la fois
Si tableau_renvoyé couvre plusieurs colonnes, RECHERCHEX renvoie tout d'un coup (matriciel dynamique).
=RECHERCHEX(A2; Clients[ID]; Clients[[Nom]:[Ville]])
→ Renvoie Nom ET Ville à la fois (déversement automatique)
Une seule formule, plusieurs colonnes remplies. Magique.
📌 Exemples concrets en entreprise
Enrichir un export de ventes
Vous recevez chaque matin un export des ventes Shopify (juste l'ID produit + quantité). Vous voulez ajouter le nom et le prix unitaire.
Nom : =RECHERCHEX([@ID]; Catalogue[Réf]; Catalogue[Désignation]; "Inconnu")
Prix : =RECHERCHEX([@ID]; Catalogue[Réf]; Catalogue[Prix]; 0)
Deux formules, deux secondes. Au mois suivant, ajoutez une colonne « Fournisseur » au catalogue : votre formule continue de fonctionner (pas d'index numérique).
Tableau de bord ressources humaines
Trouver le manager d'un collaborateur à partir de son matricule.
=RECHERCHEX(A2; Organigramme[Matricule]; Organigramme[Manager]; "Non rattaché")
Calcul de commission par tranche
Selon le CA atteint, le commercial touche une commission différente.
=RECHERCHEX(CA_mois; Paliers[Seuil]; Paliers[Taux]; 0; -1)*CA_mois
Le 5ème argument à -1 trouve automatiquement le bon palier sans tri préalable.
🔄 Migrer de RECHERCHEV vers RECHERCHEX
Conversion mécanique :
| RECHERCHEV | RECHERCHEX équivalent |
|---|---|
=RECHERCHEV(A2; T2:D100; 3; FAUX) |
=RECHERCHEX(A2; T2:T100; T2:T100[+2colonnes]) |
=SIERREUR(RECHERCHEV(A2; ...; FAUX); "X") |
=RECHERCHEX(A2; ...; ...; "X") |
⚠️ Erreurs fréquentes
1. Plages de tailles différentes
Si tableau_recherche est A2:A100 et tableau_renvoyé est B2:B50, certaines lignes ne renverront rien correctement. Veillez à des plages de même hauteur.
2. Compatibilité oubliée
Vous envoyez le fichier à un collègue sur Excel 2019 : il voit #NOM? partout. Vérifiez l'environnement avant de migrer un fichier partagé.
3. Confusion entre les modes 0 et -1
Mode 0 = exact (cas par défaut, le plus sûr). Mode -1 = approximatif inférieur, à n'utiliser que pour les paliers. Mode 1 = approximatif supérieur. Bien comprendre ce qu'on veut.
4. Oublier le 4ème argument
Si vous ne mettez pas si_non_trouvé, RECHERCHEX renvoie #N/A quand la valeur n'existe pas. Pour des rapports propres, mettez systématiquement une valeur par défaut.
5. Vouloir tout faire en une seule RECHERCHEX
Si vous combinez recherche, conditions, filtres dans une seule formule monstre, vous tombez dans le piège des SI imbriqués nouvelle génération. Décomposez en cellules intermédiaires si besoin.
✅ Bonnes pratiques
Utiliser des tableaux structurés
RECHERCHEX et tableaux structurés font un duo gagnant.
=RECHERCHEX(A2; Clients[ID]; Clients[Nom]; "Inconnu")
Auto-extension, lisibilité immédiate, robustesse.
Préférer une cellule de recherche
Plutôt qu'écrire la valeur cherchée en dur dans la formule, mettez-la dans une cellule (ex : B1). La formule devient =RECHERCHEX(B1; ...; ...). Changer la recherche = changer B1.
Combiner avec FILTRE pour des recherches multi-critères
RECHERCHEX renvoie une seule valeur. Pour plusieurs résultats correspondant à un critère, utilisez FILTRE.
⚖️ Comparaison RECHERCHEV vs RECHERCHEX
| Critère | RECHERCHEV | RECHERCHEX |
|---|---|---|
| Sens de recherche | Droite uniquement | Tous sens |
| Mode exact par défaut | Non (piège) | Oui |
| Gestion du non trouvé | Via SIERREUR | Native (4ème arg) |
| Recherche depuis la fin | Impossible | Oui (6ème arg) |
| Caractères génériques | Oui | Oui (mode 2) |
| Recherche binaire | Non | Oui (rapide) |
| Renvoie plusieurs colonnes | Non | Oui (matriciel) |
| Compatibilité versions anciennes | Toutes | 365 et 2021+ |
❓ FAQ : RECHERCHEX
RECHERCHEX est-elle disponible sur ma version d'Excel ?
Réponse courte : oui si vous êtes sur Excel 365 ou Excel 2021. Non sur 2019 et avant.
Détail : tapez =RECHERCHEX( dans une cellule. Si l'auto-complétion vous le propose, c'est bon. Sinon, votre version est trop ancienne.
Faut-il abandonner totalement RECHERCHEV ?
Réponse courte : non, mais utilisez RECHERCHEX dès que vous le pouvez.
Détail : RECHERCHEV reste valable sur les versions anciennes et fonctionne très bien sur les cas simples. Si vous démarrez un nouveau fichier sur Excel 365, RECHERCHEX est préférable.
RECHERCHEX est-elle plus rapide que RECHERCHEV ?
Réponse courte : oui, légèrement à modérément.
Détail : sur des plages de quelques milliers de lignes, les écarts sont imperceptibles. Sur 100 000 lignes et plus, RECHERCHEX est 10 à 30 % plus rapide. Avec le mode binaire (argument 6 = 2), encore plus rapide sur des tables triées.
Comment renvoyer 0 au lieu de vide quand la cellule trouvée est vide ?
Réponse courte : encapsulez avec SI ou utilisez l'opérateur +0.
Détail : =SI(RECHERCHEX(...)=""; 0; RECHERCHEX(...)). Ou astuce : ajouter 0 force la conversion : =RECHERCHEX(...)+0 renvoie 0 si la cellule est vide.
Peut-on faire une recherche RECHERCHEX qui ignore la casse ?
Réponse courte : oui par défaut.
Détail : RECHERCHEX (comme RECHERCHEV) est insensible à la casse. « PARIS » et « paris » seront trouvés. Pour une comparaison stricte, combinez avec EXACT.
Comment utiliser RECHERCHEX avec plusieurs critères ?
Réponse courte : concaténez les critères ou utilisez FILTRE.
Détail : =RECHERCHEX(A2&B2; T[Code]&T[Date]; T[Prix]) ou plus moderne avec FILTRE pour des résultats multiples.
RECHERCHEX existe-t-elle dans Google Sheets ?
Réponse courte : oui, sous le nom XLOOKUP.
Détail : Google Sheets a copié la fonction sous le nom anglais. Le comportement est globalement identique. Pratique pour les fichiers échangés entre Excel et Sheets.
Peut-on combiner RECHERCHEX avec INDIRECT ?
Réponse courte : oui.
Détail : =RECHERCHEX(A2; INDIRECT(B1&"!A:A"); INDIRECT(B1&"!B:B")) permet de chercher dans la feuille dont le nom est en B1. Pratique pour des bilans multi-entités.
🏁 Conclusion
RECHERCHEX n'est pas une mode passagère : c'est la fonction de recherche standard pour les 20 prochaines années d'Excel. Plus simple, plus robuste, plus puissante, elle élimine les bugs les plus coûteux de RECHERCHEV. Si vous êtes sur Excel 365 ou 2021, il n'y a plus aucune raison de continuer à écrire des RECHERCHEV pour de nouveaux fichiers.
Adoptez RECHERCHEX dès aujourd'hui. Pour vos modèles partagés avec des utilisateurs sur Excel 2019 ou antérieur, gardez INDEX + EQUIV comme alternative universelle. Mais pour tout votre travail personnel et tout nouveau modèle interne : RECHERCHEX, point final.