Accéder au contenu principal

VLOOKUP() Excel : ce que c’est et comment l’utiliser

Retrouvez des données entre tableaux. Recherchez des valeurs en un instant. Organisez vos informations sans fouilles manuelles.
Actualisé 22 avr. 2026  · 7 min lire

Vous avez sans doute entendu parler de VLOOKUP(). C’est l’une des fonctions les plus connues d’Excel (si ce n’est la plus connue). Une fois que vous avez compris son fonctionnement, vous allez l’adorer, car elle résout un problème réputé pénible et chronophage. VLOOKUP, c’est un peu la façon dont Microsoft vous fait gagner un temps précieux. 

Dans cet article, je vais démystifier le fonctionnement de VLOOKUP() et vous guider à travers ses usages les plus courants. Et vous pourrez toujours revenir à cet article plus tard si vous oubliez l’un des arguments. 

À quoi sert VLOOKUP() ?

Maintenant que le décor est planté, clarifions ce que fait réellement VLOOKUP()

En substance, VLOOKUP() recherche une valeur dans la première colonne d’un tableau (ou d’une plage de cellules) et renvoie une valeur d’une autre colonne sur la même ligne. 

Voyez cela comme une demande du type : « Trouvez cet élément dans ma liste et donnez-moi une autre information de la même ligne. »

Quatre arguments essentiels sont utilisés à chaque fois :

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
  • lookup_value : la valeur que vous voulez rechercher.

  • table_array : la plage de cellules contenant vos données (incluant à la fois la colonne de recherche et la ou les colonnes de retour).

  • col_index_num : le numéro de colonne (en commençant par 1 pour la plus à gauche) de table_array depuis laquelle renvoyer la valeur.

  • [range_lookup] : optionnel. Saisissez FALSE pour une correspondance exacte (c’est généralement ce que vous voulez) ou TRUE pour une correspondance approximative.

VLOOKUP() est une fonction pour laquelle il faut bien comprendre les arguments. Ce n’est pas le cas de toutes les fonctions, mais pour VLOOKUP(), c’est indispensable. 

Exemple de base avec VLOOKUP() dans Excel

Passons à la pratique. Supposons que vous ayez un petit tableau de produits et de prix, comme ceci : 

Exemple de base VLOOKUP dans Excel

Disons que vous voulez connaître le prix d’une banane. Vous pouvez utiliser :

=VLOOKUP("Banana", A2:B4, 2, FALSE)
  • "Banana" est la valeur recherchée.

  • A2:B4 est la plage de données.

  • 2 indique à Excel de renvoyer la valeur de la deuxième colonne, c’est-à-dire le prix.

  • FALSE signifie que vous voulez une correspondance exacte. (Nous y reviendrons : c’est l’argument le plus source de confusion.)

Cette formule renverra $0.30

Saisir une valeur en dur n’est pas toujours idéal, ce qui nous amène au point suivant :

VLOOKUP() avec des références de cellules plutôt qu’une valeur saisie en dur

Dans l’exemple précédent, j’ai codé en dur la valeur de recherche. En pratique, vous voudrez souvent référencer une cellule. Votre formule devient alors dynamique et réutilisable. Par exemple, si vous saisissez « Orange » en cellule D2, vous pouvez utiliser :

VLOOKUP dans Excel avec références de cellules

=VLOOKUP(D2, A2:B4, 2, FALSE)

Désormais, à chaque fois que vous modifiez la valeur en D2, la formule récupère le prix correspondant et vous constatez qu’il n’est pas nécessaire de modifier la formule elle-même. 

VLOOKUP() avec correspondance exacte vs. approximative

Vous vous demandez peut-être à quoi sert le quatrième argument, [range_lookup]. Parfois, il importe peu, mais d’autres fois, il a un impact majeur sur le résultat. La règle empirique est que, la plupart du temps, vous choisirez FALSE pour une correspondance exacte.

  • Utilisez FALSE pour les noms, identifiants ou codes produits où une correspondance précise est nécessaire.

  • Utilisez TRUE pour des plages (comme des tranches d’imposition ou des barèmes de notation) où vous voulez la valeur la plus proche sans dépasser. N’oubliez pas (c’est crucial) : votre colonne de recherche doit être triée par ordre croissant avec TRUE.

Voyons un exemple de correspondance approximative :

Supposons que vous ayez ce tableau de taux d’imposition :

VLOOKUP dans Excel avec correspondance approximative

Si votre revenu est de $15,000 :

=VLOOKUP(15000, A2:B4, 2, TRUE)

Excel trouvera la valeur la plus proche inférieure ou égale à 15000 (soit 10000) et renverra 15%.

Mais, pour la plupart des recherches, restez sur FALSE.

Pièges fréquents et limites

Comme tout outil, VLOOKUP() a ses limites, afin que vous ne soyez pas pris au dépourvu. Voici quelques points d’attention :

  • Recherche uniquement de gauche à droite. C’est la grande limite. VLOOKUP() recherche toujours dans la première colonne de votre table_array et renvoie des données des colonnes à droite. Si vous devez chercher vers la gauche, il faut une autre approche.

  • Numéro de colonne statique. Si vous insérez ou supprimez des colonnes dans votre tableau, col_index_num peut pointer vers la mauvaise colonne. Parfois vous verrez une colonne entière d’erreurs #N/A, mais d’autres fois le problème sera plus discret. 

  • Peut être lent sur de très grands jeux de données. Avec des tableaux volumineux, l’impact sur les performances peut être réel et perceptible. Si vous avez trouvé la valeur recherchée et que le résultat n’a pas besoin de rester dynamique, vous pouvez utiliser Copier > Collage spécial pour alléger votre classeur. 

Si vous rencontrez ces limites, envisagez des alternatives comme INDEX() + MATCH(), ou la fonction plus récente XLOOKUP() (si elle est disponible dans votre version d’Excel). Je vous aiderai à déchiffrer les différences un peu plus loin.

Rendre vos VLOOKUP() plus flexibles

Maintenant que vous maîtrisez les bases, rendons vos formules VLOOKUP() plus souples et plus faciles à gérer. Une excellente astuce consiste à utiliser des plages nommées. Par exemple, sélectionnez A2:B4, tapez « ProductTable » dans la zone Nom, et votre formule pourra désormais référencer ce nom :

=VLOOKUP(D2, ProductTable, 2, FALSE)

Cela rend vos formules bien plus lisibles et maintenables, surtout si vos tableaux bougent.

Gérer proprement les erreurs de VLOOKUP()

Parfois, VLOOKUP() ne trouve pas la valeur recherchée et renvoie une erreur #N/A. Pour soigner la présentation et faciliter l’utilisation de votre feuille, vous pouvez utiliser IFERROR() pour intercepter ces erreurs :

=IFERROR(VLOOKUP(D2, ProductTable, 2, FALSE), "Not found")

Ainsi, les valeurs manquantes s’afficheront comme « Not found » au lieu d’un message d’erreur peu esthétique.

VLOOKUP() vs. INDEX()/MATCH() vs. XLOOKUP()

J’ai commencé à évoquer des fonctions alternatives plus haut. 

INDEX() et MATCH() ensemble sont souvent recommandées, et voici pourquoi :

  • INDEX()/MATCH() vous permet de rechercher dans toutes les directions, pas seulement vers la droite, ce qui contourne une grosse limite de VLOOKUP().

  • Votre colonne de recherche n’a pas besoin d’être la première de la plage.

  • Insérer ou supprimer des colonnes ne casse pas votre formule.

Et voici comment XLOOKUP() se compare à VLOOKUP() :

  • XLOOKUP() remplace à la fois VLOOKUP() et INDEX()/MATCH() en combinant leurs fonctions dans une seule formule plus intuitive.

  • Vous pouvez rechercher à gauche, à droite, au-dessus ou en dessous.

  • La colonne de recherche n’a pas besoin d’être dans une position fixe.

  • Vous pouvez définir une valeur de repli si rien n’est trouvé, évitant le redouté #N/A sans avoir à utiliser l’astuce IFERROR() montrée plus tôt.

Quelques conseils et raccourcis

Pour compléter, voici quelques astuces pratiques pour VLOOKUP() :

  • Références absolues : lorsque vous recopiez la formule vers le bas, verrouillez votre table_array avec des signes $ (par ex. $A$2:$B$100) pour garder la plage constante.

  • Tri : pour les correspondances approximatives (TRUE), assurez-vous que la colonne de recherche est triée par ordre croissant.

  • Correspondances partielles : VLOOKUP() ne gère pas directement les caractères génériques pour des correspondances partielles, sauf si vous utilisez TRUE pour range_lookup ou des contournements astucieux.

Conclusion

Nous proposons d’autres tutoriels ciblés sur des cas d’usage de VLOOKUP(). Parcourez notre sélection :

Ensuite, pour un parcours d’apprentissage structuré, afin de remettre tout cela en perspective et de vraiment développer vos compétences, inscrivez-vous à nos cours Data Analysis in Excel et Advanced Excel Functions. C’est la meilleure façon de progresser durablement sur Excel.

Faites progresser votre carrière avec Excel

Acquérir les compétences nécessaires pour optimiser Excel - aucune expérience n'est requise.

Commencez aujourd'hui gratuitement

Josef Waples's photo
Author
Josef Waples

Je suis rédacteur et éditeur dans le domaine de la science des données. Je suis particulièrement intéressé par l'algèbre linéaire, les statistiques, R, etc. Je joue également beaucoup aux échecs ! 

Sujets

Apprenez Excel avec DataCamp

Cours

Introduction à Excel

4 h
227.1K
Apprenez à exploiter tout le potentiel d’Excel pour créer des analyses claires et efficaces.
Afficher les détailsRight Arrow
Commencer le cours
Voir plusRight Arrow
Contenus associés

blog

Architecture de l'entrepôt de données : Tendances, outils et techniques

Apprenez l'essentiel de l'architecture d'un entrepôt de données, des composants clés aux meilleures pratiques, pour construire un système de données évolutif et efficace !
Kurtis Pykes 's photo

Kurtis Pykes

15 min

Tutoriel

Tableaux Python

Tableaux Python avec exemples de code. Découvrez comment créer et imprimer des tableaux à l'aide de Python NumPy dès aujourd'hui.
DataCamp Team's photo

DataCamp Team

Tutoriel

Méthode index() de Python expliquée à l'aide d'exemples

Découvrez comment utiliser la fonction index() de Python pour trouver la position d'éléments dans des listes.
Sejal Jaiswal's photo

Sejal Jaiswal

Tutoriel

Tutoriel sur la fonction range() en Python

Découvrez la fonction range() de Python et ses capacités à l'aide d'exemples.
Aditya Sharma's photo

Aditya Sharma

Tutoriel

Fonctions lambda Python : Guide pour débutants

Découvrez les fonctions lambda Python, leur utilité et quand les utiliser. Comprend des exemples pratiques et des bonnes pratiques pour une mise en œuvre efficace.
Mark Pedigo's photo

Mark Pedigo

Tutoriel

Tutoriel et exemples sur les fonctions et méthodes des listes Python

Découvrez les fonctions et méthodes des listes Python. Veuillez suivre les exemples de code pour list() et d'autres fonctions et méthodes Python dès maintenant.
Abid Ali Awan's photo

Abid Ali Awan

Voir plusVoir plus