RECHERCHEV, RECHERCHEX, INDEX-EQUIV, FILTRE, UNIQUE : maîtriser la recherche dynamique.
La fonction RECHERCHEV (VLOOKUP en anglais) est la plus enseignée des fonctions de recherche depuis 25 ans. Elle permet de retrouver une valeur dans la première colonne d'un tableau et de renvoyer la valeur d'une colonne située à droite.
=RECHERCHEV(valeur_cherchée; tableau; n°_colonne; [valeur_proche])
FAUX ou 0 pour une correspondance exacte (à utiliser dans 99 % des cas)Tableau de produits en A1:C100 (col A = code, B = libellé, C = prix). Pour obtenir le prix du produit "REF-1024" :
=RECHERCHEV("REF-1024";A1:C100;3;FAUX)
Introduite en 2020, RECHERCHEX (XLOOKUP) résout les 3 limitations de RECHERCHEV. C'est désormais la fonction recommandée par Microsoft Learn.
=RECHERCHEX(valeur_cherchée; plage_recherche; plage_retour; [si_non_trouvé]; [mode_correspondance]; [mode_recherche])
| Avantage | Exemple |
|---|---|
| Recherche à gauche possible | =RECHERCHEX(C2;D:D;A:A) cherche dans D et renvoie A |
| Renvoie un tableau de valeurs | =RECHERCHEX(A2;G:G;H:J) renvoie 3 colonnes |
| Gestion native du non-trouvé | =RECHERCHEX(A2;X:X;Y:Y;"Inconnu") |
| Recherche depuis la fin | Mode_recherche = -1 (utile pour dernier prix, dernière date) |
Selon Microsoft Learn : « XLOOKUP est plus polyvalent que VLOOKUP, INDEX/MATCH et HLOOKUP. Si vous êtes nouveau dans Excel, commencez directement par XLOOKUP. » Source : learn.microsoft.com/fr-fr/office/troubleshoot/excel/xlookup-function (consulté le 2026-05-27).
Avant l'arrivée de RECHERCHEX, les utilisateurs avancés utilisaient la combinaison INDEX-EQUIV (INDEX-MATCH en anglais) qui contournait les limites de RECHERCHEV. Cette combinaison reste pertinente pour la compatibilité avec Excel 2016 et antérieur.
=INDEX(plage_à_renvoyer; EQUIV(valeur_cherchée; plage_de_recherche; 0))
Pour retrouver le code produit (col A) à partir du nom (col B) :
=INDEX(A2:A100; EQUIV("Souris sans fil"; B2:B100; 0))
Pour retrouver un tarif dans une matrice à double entrée (lignes = produits, colonnes = quantités), on combine deux EQUIV avec INDEX :
=INDEX(B2:F100; EQUIV("Produit X"; A2:A100; 0); EQUIV(50; B1:F1; 0))
Cette formule cherche le produit en ligne ET la quantité en colonne, puis renvoie l'intersection.
Une formule de recherche qui ne trouve pas sa cible renvoie #N/A. Pour afficher un message personnalisé plutôt qu'une erreur, on utilise SIERREUR.
Syntaxe : =SIERREUR(formule; valeur_si_erreur)
Exemple : =SIERREUR(RECHERCHEV(A2;tarifs;3;0); "Produit absent")
RECHERCHEX intègre nativement la gestion d'erreur via son 4e argument, ce qui supprime le besoin de SIERREUR. Privilégiez cette approche.Depuis Office 365 (2020), Excel a intégré les tableaux dynamiques (Dynamic Arrays). Une seule formule peut désormais renvoyer plusieurs résultats qui se répandent automatiquement (effet "spill").
Renvoie un sous-tableau respectant une condition :
=FILTRE(A2:C100; B2:B100="Paris"; "Aucun résultat")
Renvoie toutes les lignes où la colonne B vaut "Paris".
Renvoie les valeurs distinctes d'une plage :
=UNIQUE(A2:A1000)
Remplace l'ancienne méthode "Filtre avancé → copier sans doublon".
Renvoie une plage triée :
=TRIER(A2:C100; 3; -1)
Trie le tableau A2:C100 par la 3e colonne en ordre décroissant.
#NOM?.FAUX ou 0 pour une correspondance exacteChoisis quels cookies tu acceptes — modifiable à tout moment.