La fonction VLOOKUP dans Excel
RECHERCHEV (Anglais: VLOOKUP) (recherche verticale) cherche une valeur dans la première colonne d'un tableau et renvoie la valeur de la même ligne, dans la colonne de votre choix. Utilisez-la pour récupérer un prix à partir d'un identifiant de produit, un nom à partir d'un numéro d'employé ou une note dans un tableau de notes.
C'est l'une des fonctions Excel les plus utilisées : vous la rencontrerez dans presque tous les classeurs existants. Dans Excel 2021 et les versions plus récentes, RECHERCHEX (Anglais: XLOOKUP) fait le même travail avec moins de limites, mais connaître RECHERCHEV (Anglais: VLOOKUP) reste indispensable.
Syntaxe
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
| Argument | Ce que cela signifie |
|---|---|
| lookup_value | La valeur à rechercher, par exemple un identifiant de produit. Il s'agit généralement d'une référence de cellule. |
| table_array | Le tableau à parcourir. La valeur recherchée doit se trouver dans sa première colonne. |
| col_index_num | La colonne du tableau à renvoyer, comptée à partir de la première colonne du tableau (1 = première colonne). |
| range_lookupfacultatif | FAUX pour une correspondance exacte. VRAI (par défaut) pour une correspondance approximative sur une première colonne triée. |
Exemples
1. Trouver un prix à partir d'un identifiant de produit
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Identifiant produit | Produit | Prix | Stock | Identifiant produit | P-103 | |
| 2 | P-101 | Lampe de bureau | 24.5 | 40 | Prix | 39.9 | |
| 3 | P-102 | Chaise de bureau | 149 | 12 | |||
| 4 | P-103 | Support d'écran | 39.9 | 25 | |||
| 5 | P-104 | Clavier | 59 | 0 |
Excel trouve P-103 dans la première colonne de A2:D5, passe à la 3e colonne de ce tableau (Prix) et renvoie 39.9. FAUX impose une correspondance exacte.
2. Renvoyer une autre colonne
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Identifiant produit | Produit | Prix | Stock | Stock de P-104 | |
| 2 | P-101 | Lampe de bureau | 24.5 | 40 | 0 | |
| 3 | P-102 | Chaise de bureau | 149 | 12 | ||
| 4 | P-103 | Support d'écran | 39.9 | 25 | ||
| 5 | P-104 | Clavier | 59 | 0 |
Même recherche, mais dans la colonne 4 (Stock). Vous pouvez aussi saisir directement la valeur recherchée entre guillemets.
3. Correspondance approximative : tranches de prix
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Poids à partir de (kg) | Frais de port | Poids du colis | 6.3 | |
| 2 | 0 | 4.99 | Frais de port | 12 | |
| 3 | 2 | 7.5 | |||
| 4 | 5 | 12 | |||
| 5 | 10 | 20 |
Avec VRAI, RECHERCHEV (Anglais: VLOOKUP) renvoie la ligne de la plus grande valeur inférieure ou égale à 6.3, soit 5 → 12. La première colonne doit être triée du plus petit au plus grand.
4. Afficher un message quand rien n'est trouvé
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Identifiant produit | Produit | Prix | Stock | Produit P-200 | |
| 2 | P-101 | Lampe de bureau | 24.5 | 40 | Introuvable | |
| 3 | P-102 | Chaise de bureau | 149 | 12 | ||
| 4 | P-103 | Support d'écran | 39.9 | 25 | ||
| 5 | P-104 | Clavier | 59 | 0 |
P-200 ne figure pas dans la liste, donc RECHERCHEV (Anglais: VLOOKUP) renvoie #N/A. SIERREUR (Anglais: IFERROR) remplace l'erreur par un message clair.
Erreurs courantes
Oublier le 4e argument. Sans lui, RECHERCHEV (Anglais: VLOOKUP) utilise une correspondance approximative et peut renvoyer discrètement la mauvaise ligne.
Correction : Ajoutez toujours FAUX pour une correspondance exacte :
=RECHERCHEV(G1;A2:D5;3;FAUX).La valeur recherchée n'est pas dans la première colonne. RECHERCHEV (Anglais: VLOOKUP) ne parcourt que la colonne la plus à gauche et ne peut pas regarder vers la gauche.
Correction : Commencez le tableau à la colonne où vous recherchez, ou utilisez RECHERCHEX (Anglais: XLOOKUP) ou INDEX avec EQUIV (Anglais: MATCH).
Compter le numéro de colonne depuis la colonne A. Le numéro se compte depuis le début du tableau, et non depuis le début de la feuille.
Correction : Dans un tableau B2:E10, la colonne B est 1 et la colonne E est 4.
Le tableau se décale quand vous recopiez la formule. Chaque ligne cherche alors dans une plage décalée, et certains résultats deviennent #N/A.
Correction : Verrouillez le tableau avec des signes $ :
=RECHERCHEV(G1;$A$2:$D$5;3;FAUX)(appuyez sur F4 après avoir sélectionné la plage).#N/A alors que la valeur est bien là. En général à cause d'espaces en trop, ou d'un nombre stocké comme texte d'un côté et comme nombre de l'autre.
Correction : Nettoyez les données avec SUPPRESPACE (Anglais: TRIM), et vérifiez que les deux côtés ont le même type.
Questions fréquemment posées
Pourquoi VLOOKUP renvoie-t-il #N/A ?
La valeur n'a pas été trouvée : elle manque, elle n'est pas dans la première colonne, ou elle diffère légèrement (espaces, texte ou nombre). Englobez la formule dans SIERREUR (Anglais: IFERROR) pour afficher votre propre message.
VLOOKUP peut-il regarder vers la gauche ?
Non. Il ne renvoie des valeurs que des colonnes situées à droite de la colonne de recherche. RECHERCHEX (Anglais: XLOOKUP) et INDEX/MATCH peuvent renvoyer des valeurs de n'importe quelle colonne.
Faut-il utiliser VLOOKUP ou XLOOKUP ?
Utilisez RECHERCHEX (Anglais: XLOOKUP) si toutes les personnes qui ouvrent le fichier ont Excel 2021 ou une version plus récente. Utilisez RECHERCHEV (Anglais: VLOOKUP) dans les classeurs existants, et lorsque le fichier est partagé avec quelqu'un qui a Excel 2019 ou une version antérieure.
VLOOKUP est-il sensible à la casse ?
Non. « p-103 » et « P-103 » sont considérés comme la même valeur.
Fonctions associées
- XLOOKUPXLOOKUP recherche dans une colonne ou une ligne et renvoie la valeur correspondante d'une autre, dans n'importe quel sens, avec un message « introuvable » intégré.
- INDEXINDEX renvoie la valeur située à une ligne et une colonne données d'une plage.
- MATCHMATCH renvoie la position d'une valeur dans une liste, par exemple que « Lena » est le 3e nom.
- IFERRORIFERROR renvoie la valeur de votre choix lorsqu'une formule produit une erreur comme #N/A ou #DIV/0!, et le résultat normal sinon.