Si je ne devais enseigner qu’une seule fonction Excel à un entrepreneur, ce serait RECHERCHEV. En anglais VLOOKUP, elle permet de retrouver instantanément une information dans une grande table : le prix d’un produit, le nom d’un client à partir de son code, le taux de TVA d’une catégorie. Une fois maîtrisée, elle vous fait gagner des heures de saisie. Je vous explique tout, des bases jusqu’aux pièges classiques.
Le principe de RECHERCHEV
RECHERCHEV cherche une valeur dans la première colonne d’un tableau, puis renvoie une donnée située sur la même ligne, dans la colonne de votre choix. Imaginez un répertoire : vous cherchez un nom (la valeur cherchée) et vous obtenez son numéro de téléphone (le résultat). La syntaxe complète est =VLOOKUP(valeur,plage,index,FALSE).
Décortiquons chaque argument :
- valeur : la donnée que vous recherchez, par exemple un code produit.
- plage : le tableau dans lequel chercher. La colonne de recherche doit être la première de la plage.
- index : le numéro de la colonne à renvoyer, en comptant à partir de la gauche de la plage.
- FALSE : le type de correspondance. FALSE impose une correspondance exacte, TRUE autorise une correspondance approchée.
Un premier exemple : retrouver le prix d’un produit
Prenons une grille tarifaire simple. Vous voulez qu’en saisissant un code produit, Excel affiche automatiquement son prix.
| Code | Produit | Prix HT |
|---|---|---|
| P001 | Clavier sans fil | 29,90 € |
| P002 | Souris ergonomique | 19,50 € |
| P003 | Écran 27 pouces | 189,00 € |
| P004 | Casque audio | 75,00 € |
Si votre table occupe la plage A2:C5 et que vous saisissez le code recherché en cellule E2, la formule pour obtenir le prix sera =VLOOKUP(E2,A2:C5,3,FALSE). Excel cherche le code en colonne A et renvoie la troisième colonne, soit le prix. Le dernier argument FALSE garantit une correspondance exacte : seul le code identique sera reconnu.
Recherche exacte (FALSE) ou approchée (TRUE) ?
C’est la source de confusion numéro un. Suivez cette règle simple :
- Utilisez FALSE dans 95 % des cas : codes produits, identifiants clients, références. Vous voulez une correspondance parfaite.
- Utilisez TRUE uniquement pour des tranches numériques triées par ordre croissant, comme un barème de remise par volume ou un barème d’imposition. Excel renvoie alors la valeur immédiatement inférieure.
Un oubli du FALSE sur une recherche de code peut renvoyer un résultat erroné sans message d’erreur, ce qui est bien plus dangereux qu’un #N/A visible.
Gérer les erreurs #N/A avec SIERREUR
Quand RECHERCHEV ne trouve pas la valeur, elle affiche #N/A. Pour un classeur professionnel, c’est inélégant. Encadrez votre formule avec SIERREUR (IFERROR en anglais) pour afficher un message personnalisé. Écrivez =IFERROR(VLOOKUP(E2,A2:C5,3,FALSE),"Code introuvable"). Désormais, si le code n’existe pas, la cellule affiche « Code introuvable » au lieu de l’erreur brute.
Vous pouvez aussi renvoyer une valeur neutre comme zéro : =IFERROR(VLOOKUP(E2,A2:C5,3,FALSE),0). C’est utile quand le résultat alimente un calcul de total que vous ne voulez pas casser.
Deuxième exemple : retrouver un client par code
RECHERCHEV brille aussi dans la gestion de la facturation. À partir d’un code client, vous récupérez son nom et sa ville.
| Code client | Nom | Ville | Encours |
|---|---|---|---|
| C100 | Dupont SARL | Lyon | 1 200,00 € |
| C101 | Martin & Fils | Lille | 450,00 € |
| C102 | Atelier Léa | Nantes | 3 100,00 € |
Pour afficher le nom du client dont le code est en G2, la formule devient =VLOOKUP(G2,A2:D4,2,FALSE). Pour sa ville, changez simplement l’index : =VLOOKUP(G2,A2:D4,3,FALSE). Une seule saisie de code remplit ainsi tout un en-tête de facture.
Figer les références pour recopier la formule
Voici l’astuce qui sépare les débutants des utilisateurs aguerris. Quand vous recopiez une RECHERCHEV vers le bas d’une colonne, la plage de recherche se décale d’une ligne à chaque fois, ce qui casse vos résultats. La solution consiste à figer la plage avec des références absolues, c’est-à-dire en ajoutant des signes dollar. Au lieu d’écrire A2:C5, écrivez $A$2:$C$5. La touche F4, pressée après avoir sélectionné la plage, ajoute automatiquement ces dollars.
Ainsi, votre formule devient =VLOOKUP(E2,$A$2:$C$5,3,FALSE). En la recopiant sur cinquante lignes, la valeur cherchée E2 s’incrémente bien en E3, E4, etc., tandis que la table de référence reste fixe. C’est exactement le comportement attendu pour une colonne de prix ou de noms à remplir en masse.
Renvoyer plusieurs colonnes d’un coup
Souvent, vous voulez récupérer plusieurs informations d’une même ligne : le nom, la ville et l’encours d’un client. Plutôt que de réécrire trois fois la formule en changeant l’index, vous pouvez simplement dupliquer la RECHERCHEV en modifiant le seul numéro de colonne. Le nom se trouve en index 2, la ville en index 3, l’encours en index 4. Cette approche reste lisible et facile à maintenir.
Pour un fichier client volumineux, je conseille de placer toutes ces formules dans une zone de fiche client en haut de feuille. Vous saisissez le code une seule fois, et toute la fiche se remplit instantanément. C’est un gain de temps spectaculaire pour préparer un devis ou une facture.
L’alternative moderne : XLOOKUP
Depuis Microsoft 365, une fonction plus souple existe : RECHERCHEX, ou XLOOKUP. Elle supprime la contrainte d’avoir la colonne de recherche à gauche et gère nativement les valeurs introuvables. Sa syntaxe est =XLOOKUP(valeur,plage_recherche,plage_resultat). Pour notre prix produit, on écrirait =XLOOKUP(E2,A2:A5,C2:C5). Si votre version d’Excel le permet, je vous encourage à l’adopter : elle est plus lisible et moins sujette aux erreurs d’index.
RECHERCHEX accepte aussi un quatrième argument pour gérer les valeurs introuvables, ce qui évite d’envelopper la formule dans SIERREUR. Vous écrivez alors directement le message de repli à afficher si rien n’est trouvé. C’est un confort réel au quotidien, qui réduit le nombre de fonctions imbriquées et rend vos classeurs plus faciles à relire des mois plus tard.
Pour mettre tout cela en pratique, partez de notre fichier client et combinez-le avec une grille tarifaire prête à brancher sur vos RECHERCHEV.
Erreurs courantes
- Oublier le FALSE : sans lui, Excel passe en mode approché et peut renvoyer un voisin au lieu de la valeur exacte.
- Mal compter l’index : l’index se compte à partir de la première colonne de la plage, pas à partir de la colonne A de la feuille.
- Placer la valeur cherchée hors de la première colonne : RECHERCHEV ne regarde que la colonne de gauche de la plage. Si la donnée est ailleurs, basculez sur RECHERCHEX.
- Ne pas figer la plage : en recopiant la formule vers le bas, pensez aux références absolues (avec des dollars) pour que la plage ne se décale pas.
Questions fréquentes
Pourquoi ma RECHERCHEV renvoie-t-elle #N/A ?
Le plus souvent, la valeur cherchée n’existe pas exactement dans la première colonne, ou bien des espaces parasites se sont glissés dans la saisie. Vérifiez aussi que les deux valeurs sont du même type, texte ou nombre.
Puis-je rechercher vers la gauche avec RECHERCHEV ?
Non, RECHERCHEV ne cherche que de gauche à droite. Pour renvoyer une colonne située à gauche de la clé, utilisez RECHERCHEX ou la combinaison INDEX et EQUIV.
Quelle différence entre FALSE et TRUE concrètement ?
FALSE impose une correspondance exacte et reste le choix par défaut. TRUE cherche une correspondance approchée sur une colonne triée, utile pour les barèmes par tranches uniquement.
RECHERCHEX est-elle disponible sur toutes les versions ?
Non, RECHERCHEX n’existe que dans Excel pour Microsoft 365 et les versions récentes. Sur une version plus ancienne, restez sur RECHERCHEV ou INDEX et EQUIV.
Comment éviter qu’une cellule vide renvoie zéro ?
Quand la cellule de référence est vide, RECHERCHEV peut renvoyer un zéro inattendu. Vous pouvez tester ce cas en amont avec une condition, ou encadrer la formule avec SIERREUR pour afficher une chaîne vide à la place. Cela garde votre feuille propre tant qu’aucune donnée n’est saisie.