Comprendre la fonction LOOKUP (RECHERCHE) dans Excel
La fonction LOOKUP (ou RECHERCHE) dans Excel est une fonction de recherche qui permet de renvoyer une valeur à partir d'une plage de cellules (vecteur) ou d'une matrice. Elle est particulièrement utile pour trouver une information correspondant à un critère spécifique. Elle existe sous deux formes:
- Forme vectorielle: Recherche une valeur dans une plage de cellules (vecteur) et renvoie une valeur correspondante à partir d'une autre plage (vecteur résultat).
- Forme matricielle: Recherche une valeur dans la première ligne ou colonne d'une matrice et renvoie une valeur à partir de la dernière ligne ou colonne de la matrice.
Syntaxe de la fonction LOOKUP
La syntaxe de la fonction LOOKUP varie légèrement selon la forme utilisée:
- Forme vectorielle:
=LOOKUP(valeur_recherchée, vecteur_recherche, vecteur_résultat) - Forme matricielle:
=LOOKUP(valeur_recherchée, matrice)
Où:
valeur_recherchéeest la valeur que vous voulez trouver.vecteur_rechercheest la plage de cellules où Excel va chercher lavaleur_recherchée.vecteur_résultatest la plage de cellules contenant la valeur à renvoyer.matriceest la plage de cellules contenant les données à rechercher et à renvoyer.
Exemple pratique: Forme vectorielle
Imaginez que vous avez une liste de produits avec leurs prix correspondants dans deux colonnes séparées. Vous voulez trouver le prix d'un produit spécifique en utilisant LOOKUP.
| Produit | Prix |
|---|---|
| Pomme | 1.50 |
| Banane | 0.75 |
| Orange | 1.00 |
| Fraise | 2.00 |
Pour trouver le prix de la "Banane", vous pouvez utiliser la formule suivante:
=LOOKUP("Banane", A1:A4, B1:B4)
Dans cet exemple:
"Banane"est lavaleur_recherchée.A1:A4est levecteur_recherche(la colonne des produits).B1:B4est levecteur_résultat(la colonne des prix).
Cette formule renverra 0.75, qui est le prix de la banane.
Exemple pratique: Forme matricielle
Supposons que vous ayez un tableau de données où les produits sont listés en première colonne et les prix en dernière colonne. Vous pouvez utiliser la forme matricielle de LOOKUP pour trouver le prix d'un produit.
| Produit | Autre info | Prix |
|---|---|---|
| Pomme | Info 1 | 1.50 |
| Banane | Info 2 | 0.75 |
| Orange | Info 3 | 1.00 |
| Fraise | Info 4 | 2.00 |
Pour trouver le prix de la "Banane", vous pouvez utiliser la formule suivante:
=LOOKUP("Banane", A1:C4)
Dans cet exemple:
"Banane"est lavaleur_recherchée.A1:C4est lamatrice.
Cette formule renverra 0.75, qui est le prix de la banane.
Les limites de LOOKUP et pourquoi utiliser RECHERCHEV ou RECHERCHEX
Bien que LOOKUP soit utile, elle présente certaines limitations importantes:
- Le vecteur de recherche doit être trié: C'est la limitation la plus importante.
LOOKUPne fonctionne correctement que si levecteur_rechercheou la première colonne de lamatriceest trié en ordre croissant. Si ce n'est pas le cas, elle peut renvoyer des résultats incorrects ou inattendus. - Elle ne peut pas rechercher de gauche à droite: Dans la forme matricielle,
LOOKUPrecherche toujours dans la première colonne et renvoie une valeur de la dernière colonne. Vous ne pouvez pas spécifier une autre colonne. - Elle ne gère pas bien les erreurs: Si la
valeur_recherchéen'est pas trouvée,LOOKUPpeut renvoyer une valeur incorrecte plutôt qu'une erreur explicite.
En raison de ces limitations, il est souvent préférable d'utiliser les fonctions RECHERCHEV (VLOOKUP) ou RECHERCHEX (XLOOKUP), qui sont plus flexibles et moins sujettes aux erreurs.
RECHERCHEV (VLOOKUP): La recherche verticale améliorée
RECHERCHEV est une fonction de recherche verticale qui permet de rechercher une valeur dans la première colonne d'une plage et de renvoyer une valeur de la même ligne, mais d'une colonne différente.
Syntaxe: =RECHERCHEV(valeur_recherchée, table_matrice, no_index_col, [valeur_proche])
valeur_recherchée: La valeur à rechercher.table_matrice: La plage de cellules où effectuer la recherche.no_index_col: Le numéro de la colonne danstable_matriceà partir de laquelle renvoyer la valeur (la première colonne est 1).[valeur_proche]: Optionnel.VRAIpour une correspondance approximative (la première colonne doit être triée) ouFAUXpour une correspondance exacte.
Avantages par rapport à LOOKUP:
- Peut rechercher dans n'importe quelle colonne (pas seulement la première).
- Peut renvoyer une valeur de n'importe quelle colonne.
- Gère mieux les erreurs (renvoie
#N/Asi la valeur n'est pas trouvée). - Avec
valeur_procheàFAUX, ne nécessite pas que la colonne de recherche soit triée.
Exemple:
En reprenant l'exemple précédent:
| Produit | Autre info | Prix |
|---|---|---|
| Pomme | Info 1 | 1.50 |
| Banane | Info 2 | 0.75 |
| Orange | Info 3 | 1.00 |
| Fraise | Info 4 | 2.00 |
=RECHERCHEV("Banane", A1:C4, 3, FAUX) renverra 0.75.
RECHERCHEX (XLOOKUP): La recherche nouvelle génération
RECHERCHEX est la fonction de recherche la plus récente et la plus puissante d'Excel. Elle combine les avantages de RECHERCHEV et RECHERCHEH (recherche horizontale) et offre encore plus de flexibilité.
Syntaxe: =RECHERCHEX(valeur_recherchée, plage_recherche, plage_résultat, [si_non_trouvé], [mode_correspondance], [mode_recherche])
valeur_recherchée: La valeur à rechercher.plage_recherche: La plage de cellules où rechercher lavaleur_recherchée.plage_résultat: La plage de cellules à partir de laquelle renvoyer la valeur.[si_non_trouvé]: Optionnel. La valeur à renvoyer si lavaleur_recherchéen'est pas trouvée.[mode_correspondance]: Optionnel. Type de correspondance: 0 (exacte), -1 (exacte ou la plus petite suivante), 1 (exacte ou la plus grande précédente), 2 (correspondance avec des caractères génériques).[mode_recherche]: Optionnel. Mode de recherche: 1 (de la première à la dernière), -1 (de la dernière à la première), 2 (recherche binaire, trié par ordre croissant), -2 (recherche binaire, trié par ordre décroissant).
Avantages par rapport à RECHERCHEV et LOOKUP:
- Plus flexible et facile à utiliser.
- Peut rechercher à la fois verticalement et horizontalement.
- Peut renvoyer une valeur si la valeur n'est pas trouvée (argument
si_non_trouvé). - Ne nécessite pas que les données soient triées (avec le mode de correspondance par défaut).
- Peut rechercher de la première à la dernière ou de la dernière à la première entrée.
Exemple:
En reprenant l'exemple précédent:
| Produit | Autre info | Prix |
|---|---|---|
| Pomme | Info 1 | 1.50 |
| Banane | Info 2 | 0.75 |
| Orange | Info 3 | 1.00 |
| Fraise | Info 4 | 2.00 |
=RECHERCHEX("Banane", A1:A4, C1:C4, "Non trouvé") renverra 0.75. Si "Banane" n'était pas trouvé, la formule renverrait "Non trouvé".
Quand utiliser LOOKUP (RECHERCHE) malgré tout ?
Malgré ses limitations, LOOKUP peut encore être utile dans certains cas spécifiques:
- Compatibilité avec les anciennes versions d'Excel: Si vous devez partager votre feuille de calcul avec des personnes utilisant des versions d'Excel antérieures à 2019 (qui ne prennent pas en charge
RECHERCHEX),LOOKUPouRECHERCHEVsont vos seules options. - Tableaux de données simples et triés: Si vous avez un tableau de données simple où la colonne de recherche est toujours triée et que vous n'avez pas besoin de la flexibilité de
RECHERCHEVouRECHERCHEX,LOOKUPpeut suffire. - Simplicité pour les tâches basiques: Pour des recherches très simples et rapides, la syntaxe plus courte de
LOOKUPpeut être un avantage.
Conseils et astuces pour une recherche efficace sur Excel
- Vérifiez toujours que vos données sont triées (si vous utilisez LOOKUP): C'est crucial pour éviter des erreurs.
- Utilisez des références absolues ($) pour figer les plages de recherche: Cela est particulièrement important lorsque vous copiez des formules.
- Utilisez la fonction
SIERREURpour gérer les erreurs de recherche: Cela permet d'afficher un message personnalisé si la valeur n'est pas trouvée au lieu de l'erreur#N/A. - Familiarisez-vous avec les caractères génériques: Vous pouvez utiliser
*(n'importe quel nombre de caractères) et?(un seul caractère) dans votrevaleur_recherchéepour des recherches plus flexibles. - Choisissez la fonction la plus appropriée à votre besoin:
RECHERCHEXest souvent le meilleur choix, maisRECHERCHEVouLOOKUPpeuvent être suffisantes dans certains cas.
Conclusion
La fonction LOOKUP (RECHERCHE) d'Excel est un outil de recherche simple mais limité. Bien qu'elle puisse être utile dans certaines situations, il est souvent préférable d'utiliser les fonctions plus modernes et flexibles comme RECHERCHEV et RECHERCHEX. En comprenant les forces et les faiblesses de chaque fonction, vous pouvez choisir celle qui convient le mieux à vos besoins et effectuer des recherches efficaces et précises dans vos feuilles de calcul Excel.