📚 Cet article fait partie de notre cluster Excel pour PME africaines. Pour la vue d’ensemble (formules, TCD, Power Query, VBA, Copilot, comptabilité OHADA), consultez notre guide pilier : Maîtriser Excel pour PME — guide pratique 2026.
Pourquoi XLOOKUP rend RECHERCHEV obsolète
Introduite en 2019 et disponible en 2026 (informations vérifiées en avril 2026, susceptibles d’évoluer) sur toutes les versions Microsoft 365, la fonction RECHERCHEX (XLOOKUP en anglais) corrige tous les défauts historiques de RECHERCHEV : recherche uniquement à droite, obligation de trier pour la correspondance approximative, numéro de colonne à compter manuellement, pas de gestion native des erreurs.
Syntaxe RECHERCHEX
=RECHERCHEX(valeur_cherchée; tableau_recherche; tableau_retour; [si_non_trouvé]; [mode_correspondance]; [mode_recherche])
6 arguments dont 3 optionnels. Les arguments essentiels sont les 3 premiers.
Cas simple : retrouver le prix d’un produit
=RECHERCHEX(A2; Produits[Reference]; Produits[Prix])
Plus court que son équivalent RECHERCHEV et plus sûr : on pointe directement les colonnes, pas de numéro à compter.
Recherche à gauche : la fin d’un vieux problème
RECHERCHEV exigeait que la clé de recherche soit à gauche. RECHERCHEX s’en fiche.
=RECHERCHEX(A2; Produits[Reference]; Produits[FournisseurID])
Fonctionne que FournisseurID soit à gauche ou à droite de Reference.
Valeur par défaut si non trouvé
=RECHERCHEX(A2; Clients[ID]; Clients[Nom]; "Client inconnu")
Plus besoin d’imbriquer SIERREUR. Gain de lisibilité important.
Correspondance approximative sans tri
RECHERCHEV exigeait un tableau trié pour la correspondance approximative. RECHERCHEX fonctionne sans tri grâce au paramètre mode_correspondance :
- 0 : correspondance exacte (défaut)
- -1 : correspondance exacte ou élément inférieur le plus proche
- 1 : correspondance exacte ou élément supérieur le plus proche
- 2 : caractères génériques (*, ?)
Exemple tranche fiscale : =RECHERCHEX(Salaire; TranchesBas; Taux; ; -1)
Recherche inversée
Le paramètre mode_recherche à -1 parcourt du bas vers le haut. Idéal pour trouver la dernière occurrence d’une valeur dans un journal :
=RECHERCHEX(A2; Transactions[Client]; Transactions[Date]; ""; 0; -1)
Renvoyer un tableau entier
RECHERCHEX peut renvoyer plusieurs colonnes :
=RECHERCHEX(A2; Clients[ID]; Clients[[Nom]:[Email]])
Renvoie Nom, Telephone, Email dans 3 cellules adjacentes en un seul appel.
Recherche bidirectionnelle
Combinaison magique pour matrice 2D :
=RECHERCHEX(A2; Produits[Reference]; RECHERCHEX(B1; Mois[Janvier:Decembre]; VentesMensuelles))
Équivalent d’INDEX/EQUIV en plus lisible.
Pièges à éviter
Performance : sur tables de plus de 500 000 lignes, INDEX/MATCH reste légèrement plus rapide. Compatibilité : RECHERCHEX n’existe pas sur Excel 2019 et antérieurs. Wildcards : nécessitent explicitement le mode 2.
Plan de migration
Auditez vos classeurs avec Ctrl+F > RECHERCHEV. Remplacez progressivement en commençant par les fichiers les plus partagés. Documentez la version Excel requise.
Conclusion
RECHERCHEX est RECHERCHEV + 10 améliorations. Tout nouveau classeur devrait l’utiliser. Les gains en lisibilité et en robustesse des formules justifient pleinement la migration.
Voir aussi
- FRACTIONNER.TEXTE, TEXTE.AVANT et TEXTE.APRES dans Excel : tutoriel pas à pas
- Copilot dans Excel : générer formules et analyses en langage naturel
- Excel pour PME : formules, tableaux croisés et automatisation
Étape 1 — Vérifier que votre Excel supporte RECHERCHEX
RECHERCHEX (XLOOKUP en anglais) n’existe que sur Excel 2021, Excel 2024 et Microsoft 365. Sur Excel 2019, Excel 2016 ou Excel pour Mac 2019, la fonction renvoie #NOM? et il faut continuer avec RECHERCHEV ou passer à INDEX/EQUIV.
Vérifiez votre version : Fichier → Compte → À propos d’Excel. La ligne « Version 2402 » ou supérieure sur Microsoft 365, ou « Excel 2021 » dans le bandeau, garantit la disponibilité. Si vous travaillez en équipe sur des fichiers partagés, alignez tout le monde — un classeur édité avec RECHERCHEX ouvert sur Excel 2019 affichera #NOM? partout.
Test rapide dans une cellule vide :
=RECHERCHEX("test";{"test";"autre"};{1;2})
→ doit renvoyer 1
→ si #NOM?, votre version ne supporte pas la fonction
Indicateur de succès : le test renvoie 1. Sinon, basculez sur INDEX/EQUIV qui marche depuis Excel 97.
Étape 2 — Migrer un RECHERCHEV simple
Le cas le plus fréquent dans une PME de Sicap Liberté : une feuille Clients (colonne A = code client, colonne B = nom, colonne C = ville) et une feuille Commandes qui doit afficher le nom du client à partir du code.
L’ancienne formule RECHERCHEV :
=RECHERCHEV(A2;Clients!$A$2:$C$501;2;FAUX)
La nouvelle formule RECHERCHEX, équivalente mais plus claire :
=RECHERCHEX(A2;Clients!$A$2:$A$501;Clients!$B$2:$B$501)
Trois différences fondamentales : (a) on désigne la colonne de recherche et la colonne renvoyée séparément (plus de comptage de colonnes), (b) la correspondance exacte est le défaut (plus de FAUX à oublier), (c) si vous insérez une colonne entre Clients!A et Clients!B, RECHERCHEX continue de marcher tandis que RECHERCHEV se trompe silencieusement.
Vous devriez obtenir : la cellule renvoie le nom du client. Si vous obtenez #N/A, le code client en A2 n’existe pas dans la feuille Clients — c’est l’étape 3.
Étape 3 — Gérer les non-correspondances avec le 4e argument
Avec RECHERCHEV, gérer un #N/A imposait d’envelopper la formule dans SIERREUR :
=SIERREUR(RECHERCHEV(A2;Clients!$A$2:$C$501;2;FAUX);"Client inconnu")
RECHERCHEX intègre la valeur de repli en quatrième argument :
=RECHERCHEX(A2;Clients!$A$2:$A$501;Clients!$B$2:$B$501;"Client inconnu")
L’avantage : la formule reste lisible et la valeur de repli ne masque pas d’autres erreurs (par exemple si la plage Clients est mal référencée et renvoie #REF!, RECHERCHEV+SIERREUR cache l’erreur, RECHERCHEX laisse remonter le #REF!).
Étape 4 — Recherche à gauche (impossible avec RECHERCHEV)
RECHERCHEV exige que la colonne de recherche soit à gauche de la colonne renvoyée. Si votre feuille Produits est organisée avec colonne A = nom produit et colonne B = code produit, retrouver le nom à partir du code imposait soit de réorganiser la feuille, soit de passer à INDEX/EQUIV.
RECHERCHEX se moque du sens :
=RECHERCHEX(A2;Produits!$B$2:$B$200;Produits!$A$2:$A$200)
Recherche dans la colonne B (codes), renvoie depuis la colonne A (noms). Cela seul justifie la migration sur les fichiers de plus de 500 lignes — l’ancien contournement INDEX/EQUIV était illisible et source de bugs lors d’insertion de colonnes.
Étape 5 — Renvoyer plusieurs colonnes en une formule
RECHERCHEX peut renvoyer une plage de plusieurs colonnes d’un coup, ce que RECHERCHEV ne sait pas faire (il fallait répéter la formule pour chaque colonne).
Exemple : depuis un code client en A2, vouloir le nom (colonne B) et la ville (colonne C) en une seule formule.
=RECHERCHEX(A2;Clients!$A$2:$A$501;Clients!$B$2:$C$501)
Sortie de référence : la formule remplit B2 (nom) et C2 (ville) automatiquement par débordement de tableau dynamique. Si vous voyez #PROPAGATION!, c’est qu’une cellule en C2 contient déjà du texte qui bloque le débordement — videz-la.
Étape 6 — Recherche du dernier match (mode_recherche = -1)
Cas typique : retrouver la dernière commande d’un client à partir d’un journal trié chronologiquement. Avec RECHERCHEV, impossible directement — il fallait inverser le tri ou passer par des formules matricielles.
RECHERCHEX accepte un sixième argument mode_recherche qui prend -1 pour rechercher de bas en haut.
=RECHERCHEX(A2;Commandes!$D$2:$D$5001;Commandes!$E$2:$E$5001;"Aucune";0;-1)
Le 5e argument 0 impose la correspondance exacte (défaut), le 6e -1 dit « du bas vers le haut ». La cellule renvoie la dernière commande du client en A2. Cas d’usage : un atelier de Bamako qui veut afficher la date du dernier service par véhicule directement dans une fiche véhicule.
Étape 7 — Migration progressive d’un classeur existant
Ne réécrivez pas tout en un week-end. Procédez par lots : (a) faites une copie du classeur, (b) listez toutes les RECHERCHEV via Ctrl+F → Rechercher → RECHERCHEV( dans le classeur entier (cocher Formules dans Options), (c) migrez d’abord les feuilles à faible criticité, validez les résultats sur un échantillon, (d) montez progressivement vers les feuilles critiques en gardant l’ancien classeur en sauvegarde.
Bonne pratique : ajoutez une colonne témoin temporaire avec l’ancienne RECHERCHEV en parallèle de la nouvelle RECHERCHEX, et un test logique =B2=C2 pour vérifier que les deux donnent le même résultat sur 100 % des lignes avant de supprimer la colonne RECHERCHEV. Dans la continuité, voyez notre tutoriel suivi de 500 contrats avec alertes et le scoring RFM e-commerce.
Comparer la performance RECHERCHEX et FILTRE sur de gros volumes
RECHERCHEX et FILTRE repondent a des besoins differents mais sont parfois interchangeables. RECHERCHEX renvoie une seule valeur correspondant a la premiere correspondance trouvee, tandis que FILTRE renvoie l’ensemble des lignes qui satisfont un critere. Sur un fichier de 50 000 lignes, RECHERCHEX traite typiquement la requete en moins de 50 millisecondes alors que FILTRE peut demander 200 a 500 millisecondes selon la complexite du critere et le nombre de colonnes a renvoyer.
Cette difference, imperceptible sur un fichier de 1 000 lignes, devient sensible sur les classeurs metier de PME a Dakar ou Abidjan qui accumulent plusieurs annees d’historique. Pour un tableau de bord temps reel qui rafraichit dix formules a chaque saisie, privilegiez RECHERCHEX quand vous cherchez une correspondance unique et reservez FILTRE aux cas qui exigent reellement plusieurs lignes en sortie.
Mesurez la performance de votre classeur via Outils de developpement puis Performance avant et apres optimisation. Un gain de 30 a 50 pour cent sur un classeur lourd transforme l’experience quotidienne des utilisateurs et reduit la frustration qui pousse souvent a l’abandon des outils Excel structures au profit de simples copier-coller.
Combiner plusieurs criteres avec un produit booleen
RECHERCHEX gere nativement un seul critere de recherche, mais une astuce classique permet de combiner plusieurs criteres : multiplier les comparaisons booleennes pour obtenir un produit qui vaut 1 seulement quand toutes les conditions sont vraies. La formule type ressemble a RECHERCHEX(1; (Plage1=Critere1)*(Plage2=Critere2); PlageRetour). Cette technique, parfois appelee recherche bi-critere, ouvre des cas d’usage plus avances comme retrouver le tarif d’un produit pour un client donne ou la commission d’un commercial pour une zone donnee.
L’inconvenient est que la formule devient illisible apres trois ou quatre criteres. Au-dela, basculez plutot sur la combinaison FILTRE + INDEX qui offre une syntaxe plus claire, quitte a accepter un leger surcout en performance. Documentez le choix retenu dans une cellule commentee adjacente pour faciliter la maintenance future.
Pour les recherches frequentes sur grand volume, envisagez egalement de creer une cle composite (concatenation des criteres dans une colonne dediee) qui transforme la recherche multi-criteres en recherche simple sur cette colonne unique. Ce gain de simplicite et de performance vaut souvent l’effort de structuration initial.
FAQ : decoder les erreurs frequentes de RECHERCHEX
L’erreur #N/A signifie que RECHERCHEX n’a trouve aucune correspondance. La cause classique est un decalage de format (nombre stocke comme texte, espace insecable, casse differente). La parade consiste a ajouter une fonction NETTOYAGE et SUPPRESPACE autour de la valeur recherchee, voire un MAJUSCULE si la casse pose probleme. L’argument [si_non_trouve] de RECHERCHEX permet aussi de renvoyer un message clair plutot qu’une erreur cryptique.
L’erreur #VALEUR! survient generalement quand la plage de recherche et la plage de retour n’ont pas la meme dimension. RECHERCHEX exige que les deux plages aient le meme nombre de lignes (ou de colonnes en mode horizontal). Une simple verification des references corrige le probleme dans 90 pour cent des cas.
L’erreur #SPILL ou #DEVERSEMENT apparait quand RECHERCHEX renvoie plusieurs valeurs (mode multi-resultat) mais qu’une cellule occupe deja la zone de deversement. Liberez les cellules en aval ou modifiez la formule pour pointer vers une zone vierge. Lectures complémentaires sur la performance Excel, voir notre tutoriel FILTRE UNIQUE TRIER.
Plan de migration progressive de RECHERCHEV vers RECHERCHEX
Sur un classeur metier de plusieurs centaines de formules RECHERCHEV, ne tentez pas une migration big bang qui multiplie les risques de regression. La methode professionnelle procede par lots : identifier les vingt formules les plus utilisees (souvent 80 pour cent du trafic), les migrer en priorite, valider les resultats sur une semaine, puis poursuivre avec les lots suivants. Cette progression maitrisee tient en six a huit semaines pour un classeur complexe et limite l’impact metier.
Documentez chaque migration dans un journal partage avec la responsable utilisatrice : ancienne formule, nouvelle formule, date de bascule, retour utilisateur. Au bout du parcours, ce journal devient une reference precieuse pour les classeurs similaires et facilite l’onboarding des successeurs.
Conservez en archive une copie du classeur pre-migration pendant au moins six mois pour pouvoir revenir en arriere en cas de probleme tardif identifie. Cette discipline coute peu en stockage et apporte une serenite considerable lors de migrations sensibles.
Former les utilisateurs sur la nouvelle syntaxe
La migration technique est inutile si les utilisateurs continuent a saisir RECHERCHEV par habitude. Organisez une session interne de 90 minutes avec exercices pratiques sur des cas reels du classeur metier. La majorite des utilisateurs adoptent rapidement la nouvelle syntaxe et apprecient la lisibilite renforcee de RECHERCHEX par rapport a RECHERCHEV.
Capitalisez sur ces sessions de formation en captant les questions recurrentes dans une FAQ interne. Au bout de quelques sessions, la FAQ couvre 80 pour cent des points souleves et reduit considerablement le temps consacre au support utilisateur ulterieur. Tenez-la a jour sur le wiki d’entreprise ou un document partage.