ElyxAI

Maîtriser RECHERCHEX : La formule de recherche nouvelle génération d'Excel

Intermédiaire
=RECHERCHEX(valeur_cherchée; matrice_recherche; matrice_renvoi; [si_non_trouvé]; [mode_correspondance]; [mode_recherche])

RECHERCHEX est une formule révolutionnaire introduite dans Excel 365 qui transforme la manière de chercher et de retourner des données. Contrairement à VLOOKUP qui impose une recherche de gauche à droite, RECHERCHEX offre une flexibilité totale en permettant de chercher dans n'importe quelle colonne et de retourner une valeur depuis n'importe quelle autre colonne, dans n'importe quel ordre. Cette formule est particulièrement puissante pour les professionnels travaillant avec des données complexes, des bases de données volumineuses ou des structures de feuilles non standardisées. La force principale de RECHERCHEX réside dans sa gestion des erreurs intégrée et ses modes de recherche avancés. Vous pouvez définir une valeur par défaut si la recherche échoue, utiliser des correspondances exactes ou approximatives, et même rechercher du début à la fin ou de la fin au début. Cette flexibilité en fait l'outil idéal pour remplacer les combinaisons complexes INDEX/MATCH ou pour moderniser des formules VLOOKUP obsolètes. Dans ce guide complet, nous explorons chaque aspect de RECHERCHEX : sa syntaxe précise, ses paramètres optionnels, des exemples métier concrets, et les meilleures pratiques pour l'intégrer dans vos workflows Excel. Que vous soyez débutant ou utilisateur avancé, vous découvrirez comment exploiter pleinement cette formule pour gagner du temps et améliorer la fiabilité de vos analyses de données.

Syntaxe et paramètres

La syntaxe complète de RECHERCHEX est : =RECHERCHEX(valeur_cherchée; matrice_recherche; matrice_renvoi; [si_non_trouvé]; [mode_correspondance]; [mode_recherche]). Le premier paramètre, valeur_cherchée (requis), est la valeur que vous recherchez dans votre base de données. Le deuxième, matrice_recherche (requis), est la plage où Excel doit chercher cette valeur - elle peut être une colonne, une ligne ou même une plage non contiguë. Le troisième, matrice_renvoi (requis), est la plage contenant les valeurs à retourner une fois la correspondance trouvée. Les trois paramètres optionnels offrent une puissance supplémentaire. Si_non_trouvé permet de spécifier une valeur personnalisée (texte, nombre ou formule) si la recherche échoue, évitant ainsi les erreurs #N/A. Mode_correspondance contrôle le type de correspondance : 0 pour exact, -1 pour exact ou prochaine valeur inférieure, 1 pour exact ou prochaine valeur supérieure, et 2 pour correspondance de caractères génériques. Mode_recherche détermine la direction : 1 pour recherche du premier au dernier élément (par défaut), et -1 pour recherche du dernier au premier. Un conseil pratique : utilisez toujours le paramètre si_non_trouvé avec une valeur descriptive comme "Non trouvé" ou "N/A" plutôt que de laisser les erreurs #N/A s'afficher. Pour les correspondances approximatives, assurez-vous que votre matrice_recherche est triée correctement. Enfin, si vous travaillez avec des données sensibles à la casse, notez que RECHERCHEX effectue une recherche insensible à la casse par défaut - combinez-la avec EXACT si vous avez besoin de sensibilité à la casse.

lookup_value
Valeur à rechercher
lookup_array
Plage où chercher
return_array
Plage à retourner
if_not_found
Valeur si non trouvé
Optionnel
match_mode
Mode de correspondance
Optionnel
search_mode
Mode de recherche
Optionnel

Exemples pratiques

Recherche simple de prix produit

=RECHERCHEX("ART-2045"; A:A; B:B; "Produit introuvable")

Cette formule cherche 'ART-2045' dans la colonne A et retourne la valeur correspondante de la colonne B. Si le code n'existe pas, elle affiche 'Produit introuvable' au lieu d'une erreur.

Recherche inversée avec gestion d'erreur

=RECHERCHEX("Marie Dupont"; D:D; C:C; 0; 0)

Cette formule recherche 'Marie Dupont' dans la colonne D (Nom) et retourne le numéro d'employé de la colonne C. Le paramètre 0 pour mode_correspondance garantit une correspondance exacte. Le dernier 0 signifie '0 si non trouvé', affichant zéro plutôt qu'une erreur.

Recherche avec correspondance approximative

=RECHERCHEX(650; E:E; F:F; "Hors barème"; 1; 1)

Avec mode_correspondance=1, RECHERCHEX cherche 650 et retourne la catégorie correspondant à la plus grande valeur ≤650 (soit 500). Cela crée un système de tarification par paliers automatique. Si 650 dépasse tous les seuils, elle retourne 'Hors barème'.

Points clés à retenir

  • RECHERCHEX est la formule de recherche moderne d'Excel 365, remplaçant avantageusement VLOOKUP et INDEX/MATCH avec une flexibilité totale et une gestion d'erreur intégrée.
  • Les trois paramètres requis (valeur_cherchée, matrice_recherche, matrice_renvoi) définissent la recherche basique; les trois paramètres optionnels (si_non_trouvé, mode_correspondance, mode_recherche) ajoutent une puissance avancée.
  • Utilisez toujours le paramètre si_non_trouvé pour éviter les erreurs #N/A et améliorer la professionnalité de vos rapports. Une simple chaîne comme "Non trouvé" suffit.
  • RECHERCHEX n'est disponible que dans Excel 365 et 2021; pour les versions antérieures, utilisez INDEX/MATCH ou VLOOKUP. Google Sheets ne la supporte pas.
  • Combinez RECHERCHEX avec TRIM, UPPER et CONCATENATE pour gérer les données imparfaites et créer des clés de recherche complexes, maximisant la robustesse de vos analyses.

Astuces de pro

Utilisez toujours le paramètre si_non_trouvé avec une valeur descriptive plutôt que de laisser #N/A s'afficher. Cela rend vos rapports plus professionnels et facilite le débogage.

Impact : Améliore la lisibilité des résultats de +40%, réduit les erreurs de rapport et accélère l'identification des données manquantes.

Pour les recherches approximatives, triez toujours votre matrice_recherche en ordre croissant. RECHERCHEX dépend de cet ordre pour retourner les résultats corrects avec mode_correspondance=1 ou -1.

Impact : Évite les résultats erronés et les erreurs #N/A imprévisibles. Peut être fait une fois lors de la préparation des données.

Créez des noms de plages (Formules > Gestionnaire de noms) pour vos matrices de recherche. Cela rend les formules plus lisibles et facilite la maintenance : =RECHERCHEX(A1; Produits_Code; Produits_Prix; "N/A")

Impact : Améliore la maintenabilité de +50%, rend les formules auto-documentées, et réduit les erreurs de référence lors de restructurations.

Testez le mode_recherche=-1 (recherche du dernier au premier) quand vous avez des doublons et voulez la dernière occurrence plutôt que la première.

Impact : Donne plus de contrôle sur les données dupliquées et permet des logiques métier nuancées sans post-traitement.

Combinaisons utiles

RECHERCHEX + IFERROR pour gestion d'erreur avancée

=IFERROR(RECHERCHEX(A1; B:B; C:C; #N/A); "Valeur introuvable - Vérifier les données")

Combine IFERROR avec RECHERCHEX pour capturer non seulement #N/A mais aussi d'autres erreurs potentielles. Utile pour des rapports robustes où vous voulez un message d'erreur personnalisé au lieu d'une formule cassée.

RECHERCHEX + TRIM + UPPER pour nettoyage de données

=RECHERCHEX(UPPER(TRIM(A1)); UPPER(TRIM(B:B)); C:C; "Non trouvé"; 0)

Combine TRIM (supprime espaces) et UPPER (convertit en majuscules) pour normaliser les données avant recherche. Élimine les problèmes de correspondance dus à des espacements ou casses différentes.

RECHERCHEX + CONCATENATE pour clés composites

=RECHERCHEX(CONCATENATE(A1; "-"; B1); D:D; E:E; "Non trouvé"; 0)

Crée une clé de recherche composite en combinant plusieurs colonnes. Utile quand l'identifiant unique est formé de plusieurs champs (par exemple : Code Client + Code Produit).

Erreurs courantes

#REF!

Cause : La matrice_recherche ou matrice_renvoi référence une plage supprimée, ou les plages ont des tailles incompatibles (nombre de lignes/colonnes différent).

Solution : Vérifiez que les deux matrices ont exactement le même nombre de lignes ou de colonnes selon leur orientation. Utilisez des références absolues ($A$1:$A$100) pour éviter les décalages lors de copie. Testez les plages individuellement en les sélectionnant dans la barre de formule.

#VALUE!

Cause : Le paramètre mode_correspondance ou mode_recherche contient une valeur invalide (par exemple 3 au lieu de 0, 1 ou -1), ou la valeur_cherchée a un type incompatible avec matrice_recherche.

Solution : Vérifiez que mode_correspondance utilise uniquement 0, 1, -1 ou 2, et que mode_recherche utilise 1 ou -1. Assurez-vous que valeur_cherchée et les éléments de matrice_recherche sont du même type (texte avec texte, nombre avec nombre). Utilisez TEXT() ou VALUE() pour convertir les types si nécessaire.

#N/A

Cause : La valeur_cherchée n'existe pas dans matrice_recherche et le paramètre si_non_trouvé n'a pas été spécifié, ou une erreur interne s'est produite.

Solution : Toujours inclure le paramètre si_non_trouvé avec une valeur par défaut : =RECHERCHEX(valeur; matrice; renvoi; "Non trouvé"). Vérifiez les espaces superflus avec TRIM(), vérifiez la casse avec EXACT() si nécessaire, et testez si la valeur cherchée existe réellement dans la matrice avec Ctrl+F.

Checklist de dépannage

  • 1.Vérifiez que matrice_recherche et matrice_renvoi ont exactement le même nombre de lignes (ou colonnes si orientation horizontale). Les tailles incompatibles causent #REF!
  • 2.Testez si la valeur_cherchée existe réellement dans matrice_recherche avec Ctrl+F. Les espaces superflus ou différences de casse peuvent causer #N/A même si la valeur semble présente.
  • 3.Confirmez que mode_correspondance utilise uniquement les valeurs valides : 0 (exact), 1 (exact ou supérieur), -1 (exact ou inférieur), ou 2 (caractères génériques). Les autres valeurs causent #VALUE!
  • 4.Pour correspondances approximatives, vérifiez que matrice_recherche est triée en ordre croissant (mode_correspondance=1) ou décroissant (mode_correspondance=-1). Un tri incorrect produit des résultats erronés.
  • 5.Assurez-vous que valeur_cherchée et les éléments de matrice_recherche sont du même type de données (texte vs nombre). Utilisez TEXT() ou VALUE() pour convertir si nécessaire.
  • 6.Vérifiez que les références de plages n'ont pas été accidentellement supprimées ou modifiées. Utilisez des références absolues ($A$1:$A$100) pour éviter les décalages lors de copie de formules.

Cas particuliers

Recherche avec valeurs NULL ou cellules vides dans matrice_recherche

Comportement : RECHERCHEX traite les cellules vides comme des valeurs valides. Si vous cherchez une cellule vide, elle retournera la première correspondance trouvée. Si vous cherchez une valeur spécifique et que la matrice contient des vides, elle peut ignorer les vides selon le contexte.

Solution : Nettoyez vos données en supprimant les lignes vides avant la recherche, ou utilisez FILTER pour éliminer les vides : =RECHERCHEX(A1; FILTER(B:B; B:B<>""); FILTER(C:C; B:B<>""); "Non trouvé")

Les données vides sont une source commune d'erreurs subtiles; une préparation des données robuste est essentielle.

Recherche de valeurs très grandes (nombres scientifiques) ou très petites (décimales haute précision)

Comportement : RECHERCHEX peut perdre en précision avec les nombres extrêmes en raison de la représentation interne d'Excel (15 chiffres significatifs). Une correspondance exacte peut échouer si les valeurs diffèrent au-delà de cette précision.

Solution : Pour les nombres très précis, convertissez en texte pour la recherche : =RECHERCHEX(TEXT(A1; "0.0000000000000000"); ARRAYFORMULA(TEXT(B:B; "0.0000000000000000")); C:C; "Non trouvé")

Rarement un problème en pratique, mais critique pour les applications financières ou scientifiques.

Recherche avec mode_correspondance=2 (caractères génériques) et données contenant * ou ?

Comportement : Les caractères * (plusieurs caractères) et ? (un caractère) sont interprétés comme caractères génériques. Si vos données contiennent littéralement * ou ?, la recherche peut retourner des résultats inattendus.

Solution : Échappez les caractères génériques avec ~ : cherchez "~*" pour trouver un astérisque littéral. Exemple : =RECHERCHEX("Produit~*"; A:A; B:B; "Non trouvé"; 2)

Peu courant mais crucial pour les données contenant des caractères spéciaux.

Limitations

  • RECHERCHEX n'est disponible que dans Excel 365 et Excel 2021, excluant les utilisateurs d'Excel 2019 et versions antérieures. Pour compatibilité maximale, utilisez INDEX/MATCH.
  • RECHERCHEX effectue une recherche insensible à la casse par défaut. Si vous avez besoin de sensibilité à la casse (par exemple, distinguer "ABC" de "abc"), vous devez implémenter une solution alternative avec EXACT et MATCH.
  • Les performances peuvent se dégrader sur des matrices très volumineuses (>100 000 lignes). Pour les mégadonnées, considérez Power Query, les tables de données ou une base de données externe.
  • RECHERCHEX ne peut retourner qu'une seule valeur par recherche. Si vous avez besoin de retourner plusieurs colonnes, vous devez créer plusieurs formules RECHERCHEX ou utiliser une approche INDEX/MATCH imbriquée plus complexe.

Alternatives

Compatible avec toutes les versions d'Excel, formule historique bien connue

Quand : Recherche simple de gauche à droite dans des structures de données standardisées. À éviter pour les nouvelles formules au profit de RECHERCHEX.

Extrêmement flexible, recherche dans n'importe quel sens, gestion d'erreur possible avec IFERROR

Quand : Recherches complexes, structures de données non standardisées, ou quand RECHERCHEX n'est pas disponible (Excel 2019 et versions antérieures).

Équivalent anglais de RECHERCHEX, syntaxe similaire, très performante

Quand : Si vous utilisez Excel 365 en anglais. Fonctionnellement identique à RECHERCHEX dans les versions francophones.

Compatibilité

Excel

Depuis Excel 365 et Excel 2021

=RECHERCHEX(valeur_cherchée; matrice_recherche; matrice_renvoi; [si_non_trouvé]; [mode_correspondance]; [mode_recherche])

Google Sheets

Non disponible

LibreOffice

Non disponible

Questions fréquentes

Vous maîtrisez maintenant RECHERCHEX! Explorez d'autres formules avancées avec ElyxAI pour transformer vos analyses Excel. Découvrez comment automatiser vos workflows de données avec nos guides complets et optimisez votre productivité dès aujourd'hui.

Explorer Recherche et référence

Formules connexes