RECHERCHEV : le mode d’emploi, et les six causes du #N/A
Les quatre arguments expliqués un par un, le piège du quatrième, et la liste de contrôle qui règle cinq pannes sur six en trente secondes.
RECHERCHEV va chercher une information dans un autre tableau à partir d'un identifiant commun. Un numéro de client d'un côté, la liste des clients de l'autre, et la formule ramène le nom, la ville ou le montant sans que vous ayez à le recopier.
C'est la formule la plus utilisée d'Excel, et de loin la plus mal comprise — non pas parce qu'elle est compliquée, mais parce qu'elle échoue en silence quand une seule de ses conditions n'est pas remplie.
Les quatre arguments, dans l'ordre
=RECHERCHEV(valeur_cherchée ; table_matrice ; no_index_col ; valeur_proche)
valeur_cherchée— ce que vous connaissez déjà. Le numéro de client, la référence produit, le code postal. Une seule cellule.table_matrice— le tableau où chercher. La colonne contenant la valeur cherchée doit être la première de cette plage : c'est la règle qui explique la moitié des échecs.no_index_col— le numéro de la colonne à ramener, compté depuis le début de la plage, pas depuis le début de la feuille. Si votre plage commence enD, alorsDvaut 1,Evaut 2, et ainsi de suite.valeur_proche—FAUXpour une correspondance exacte,VRAIpour une correspondance approchée. Écrivez toujoursFAUX. La suite explique pourquoi.
Un exemple concret. Vos commandes sont en colonne A, votre catalogue produits occupe les colonnes F à H, et vous voulez le prix qui se trouve en H :
=RECHERCHEV(A2 ; $F$2:$H$500 ; 3 ; FAUX)
La plage commence en F : F vaut 1, G vaut 2, H vaut 3. D'où le 3.
Pourquoi le quatrième argument doit toujours valoir FAUX
C'est le piège le plus coûteux d'Excel, parce qu'il ne produit aucune erreur visible : il donne des résultats faux.
Si vous omettez le quatrième argument, Excel prend VRAI par défaut, c'est-à-dire la correspondance approchée : il cherche la plus grande valeur inférieure ou égale à ce que vous demandez. Pour la référence A-450 introuvable, il ramènera tranquillement la ligne de A-449, ou de A-12, sans un mot.
Une correspondance approchée n'a de sens que sur des tranches — barème d'imposition, remise par volume, note en lettres. Elle exige en outre que la première colonne soit triée en ordre croissant, sinon le résultat est arbitraire. Hors de ce cas précis,
FAUXest la seule valeur correcte.
Prenez l'habitude de taper 0 plutôt que FAUX : Excel l'interprète de la même façon, et c'est deux caractères au lieu de cinq.
Bloquer la plage avant de recopier
Vous écrivez la formule en ligne 2, elle fonctionne. Vous la recopiez vers le bas, et à partir d'un certain point tout devient #N/A.
C'est que la plage a glissé avec la formule : partie de F2:H500, elle est devenue F3:H501, puis F4:H502. Les dernières lignes du catalogue sortent progressivement de la zone de recherche.
La correction tient en une touche : sélectionnez la plage dans la barre de formule et appuyez sur F4. Excel écrit $F$2:$H$500, et la plage ne bouge plus. La cellule cherchée, elle, doit continuer de suivre : A2 reste A2, sans dollar.
Le détail est expliqué en entier dans la fiche Références absolues : à quoi sert le dollar dans une formule.
Il existe une méthode plus sûre encore : transformez votre catalogue en tableau structuré avec Ctrl + L. La plage s'écrit alors Catalogue[#Tout], elle ne peut plus glisser, et elle s'étend toute seule quand vous ajoutez des lignes.
Votre formule renvoie #N/A : les six causes
#N/A signifie « valeur non trouvée ». Dans l'ordre de fréquence :
- La valeur n'existe réellement pas dans la première colonne de la plage. Vérifiez-le avec un
Ctrl+Favant d'accuser la formule. - La colonne cherchée n'est pas la première de la plage. RECHERCHEV ne regarde jamais ailleurs que dans la première colonne de ce que vous lui donnez.
- Un nombre d'un côté, du texte de l'autre. Le cas le plus vicieux : à l'œil,
1024et1024sont identiques. Pour Excel, l'un peut être un nombre et l'autre une chaîne de caractères, et ils ne se correspondent pas. Indice visuel : un nombre s'aligne à droite, du texte s'aligne à gauche. Pour en avoir le cœur net, testez=ESTTEXTE(A2). - Des espaces invisibles. Les exports de logiciels métier ajoutent souvent une espace en fin de valeur.
=SUPPRESPACE(A2)la retire ; comparez la longueur avec=NBCAR(A2)pour la débusquer. - La plage a glissé faute de dollars, comme vu plus haut.
- Le quatrième argument vaut
VRAIsur des données non triées. Là, vous n'obtenez pas toujours#N/A— parfois un résultat faux, ce qui est pire.
Pour afficher un message plutôt que l'erreur, enveloppez le tout :
=SIERREUR(RECHERCHEV(A2 ; $F$2:$H$500 ; 3 ; 0) ; "Non trouvé")
Mais ne le faites qu'après avoir vérifié que la formule fonctionne : SIERREUR masque le symptôme, et une erreur masquée ne se corrige jamais.
Les autres messages d'erreur
#REF!— votreno_index_coldépasse le nombre de colonnes de la plage. Vous demandez la colonne 4 d'une plage qui n'en contient que 3.#VALEUR!—no_index_colvaut 0 ou un nombre négatif. La numérotation commence à 1.#NOM?— le nom de la fonction est mal orthographié, ou vous avez tapé la version anglaiseVLOOKUPdans un Excel français.
Chercher à gauche : INDEX et EQUIV
RECHERCHEV ne sait regarder que vers la droite. Si l'information voulue se trouve à gauche de la colonne d'identifiants, elle est inutilisable — et réorganiser les colonnes d'un fichier reçu n'est pas toujours possible.
Le couple INDEX / EQUIV n'a pas cette limite :
=INDEX(F2:F500 ; EQUIV(A2 ; H2:H500 ; 0))
Lisez-le de l'intérieur vers l'extérieur : EQUIV trouve à quelle position se trouve A2 dans la colonne H, et INDEX ramène la valeur qui occupe cette même position dans la colonne F. Peu importe que F soit avant ou après H.
Le 0 final d'EQUIV joue le rôle du FAUX de RECHERCHEV : correspondance exacte. Il s'oublie aussi facilement, avec les mêmes conséquences.
RECHERCHEX, si votre version la propose
Depuis Excel 2021 et sur Microsoft 365, une formule remplace les deux précédentes :
=RECHERCHEX(A2 ; H2:H500 ; F2:F500 ; "Non trouvé")
Vous désignez la colonne où chercher, puis la colonne à ramener. Plus de numéro de colonne à compter, plus de contrainte d'ordre, correspondance exacte par défaut, et le message d'erreur intégré en quatrième argument.
Attention avant de l'adopter partout : un fichier contenant
RECHERCHEXouvert dans Excel 2019 ou antérieur affiche#NOM?. Si vous échangez des classeurs avec des personnes dont vous ne connaissez pas la version, RECHERCHEV reste le choix sûr.
La liste de contrôle, quand ça ne marche pas
Dans cet ordre, en trente secondes :
- La valeur cherchée existe-t-elle bien dans la première colonne de la plage ?
- La plage commence-t-elle bien par la colonne contenant les identifiants ?
- Le quatrième argument est-il à
0ouFAUX? - La plage est-elle bloquée par des
$? - Les deux valeurs sont-elles du même type — toutes deux nombres, ou toutes deux texte ?
- Y a-t-il des espaces en fin de valeur ?
Cinq fois sur six, la réponse est dans les trois premières lignes.
Pour aller plus loin
Excel et les fonctions de recherche
Apprenez à utiliser les fonctions de recherche d'Excel pour être plus efficace
À lire ensuite
Construire son premier tableau croisé dynamique
La méthode complète, du nettoyage des données au pourcentage du total. Comptez vingt minutes pour votre premier tableau, deux minutes pour les suivants.
Références absolues : à quoi sert le dollar dans une formule
Le signe dollar en trois minutes, et le raccourci pour ne plus jamais le taper à la main.