Fonction XLOOKUP

Utilisez la fonction XLOOKUP quand vous avez besoin de rechercher des éléments dans un tableau ou une plage par ligne. Par exemple, recherchez le prix d’une partie de l’automobile par numéro de pièce ou recherchez le nom d’un employé en fonction de son ID d’employé. Avec XLOOKUP, vous pouvez rechercher un critère de recherche dans une colonne et renvoyer le résultat de la même ligne dans une autre colonne, quel que soit le côté de la colonne de renvoi.

Faites la différence grâce aux Annonces

Remarque : Cette fonction est actuellement disponible pour Microsoft 365 abonnés du canal actuel. Il sera disponible pour Microsoft 365 abonnés du canal semi-annuel entreprise à partir du 2020 juillet. Pour plus d’informations sur la manière dont les fonctionnalités sont déployées pour les Microsoft 365 abonnés, voir Quand vais-je obtenir les dernières fonctionnalités pour Microsoft 365.

La fonction XLOOKUP recherche une plage ou une matrice et renvoie un élément correspondant au premier résultat trouvé. S’il n’existe pas de correspondance, XLOOKUP peut retourner le plus proche (approximatif). 

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode]) 

Argument

Description

valeur_cherchée

Obligatoire

Valeur de recherche

matrice_recherche

Obligatoire

Tableau ou plage dans lequel Rechercher

return_array

Obligatoire

Matrice ou plage à retourner

[if_not_found]

Facultatif

Si une correspondance valide n’est pas trouvée, renvoyez le texte [if_not_found] que vous fournissez.

Si aucune correspondance valide n’est trouvée et que [if_not_found] est manquant, #N/A sera renvoyé.

[match_mode]

Facultatif

Spécifiez le type de match :

0-correspondance exacte. Si aucune valeur n’est trouvée, renvoyer #N/A. Il s’agit de la valeur par défaut.

-1-correspondance exacte. Si aucune valeur n’est trouvée, retourne l’élément le plus petit suivant.

1-correspondance exacte. Si aucune valeur n’est trouvée, renvoyer l’élément supérieur suivant.

2-correspondance avec caractère générique où *, ? et ~ ont une signification particulière.

[search_mode]

Facultatif

Spécifiez le mode de recherche à utiliser :

1-effectuer une recherche à partir du premier élément. Il s’agit de la valeur par défaut.

-1-effectuer une recherche inverse à partir du dernier élément.

2-effectuer une recherche binaire qui repose sur la lookup_array triée par ordre croissant . Si ce n’est pas le cas, les résultats non valides sont renvoyés.

-2-effectuer une recherche binaire qui repose sur la lookup_array triée par ordre décroissant . Si ce n’est pas le cas, les résultats non valides sont renvoyés.

Exemples

Exemple 1

Cet exemple provient de la vidéo ci-dessus et utilise un simple XLOOKUP pour chercher le nom d’un pays, puis renvoie son indicatif de pays. Il inclut uniquement le lookup_value (cellule F2), lookup_array (plage B2 : B11) et return_array (plage D2 : D11). L’argument match_mode n’est pas inclus, car XLOOKUP utilise par défaut une correspondance exacte.

Exemple de la fonction XLOOKUP utilisée pour renvoyer le nom d’un employé et le service en fonction de l’ID de l’employé. La formule est = XLOOKUP (B2 ; B5 : B14 ; C5 : C14).

Remarque : XLOOKUP est différent de la fonction RECHERCHEV dans le fait qu’il utilise des tableaux de recherche et de retour séparés, où RECHERCHEV utilise une seule table de tableau suivie d’un numéro d’index de colonne. La formule RECHERCHEV équivalente dans le cas présent serait : = RECHERCHEV (F2 ; B2 : D11 ; 3 ; faux)

Exemple 2

Dans cet exemple, nous recherchons les informations des employés sur la base d’un numéro d’identification d’employé. À la différence de RECHERCHEV, XLOOKUP est en mesure de retourner un tableau avec plusieurs éléments, ce qui permet à une seule formule de renvoyer le nom de l’employé et le service à partir des cellules C5 : D14.

Exemple de la fonction XLOOKUP utilisée pour renvoyer le nom et le service d’un employé en fonction du IDt de l’employé. La formule est : = XLOOKUP (B2 ; B5 : B14 ; C5 : D14 ; 0 ; 1)

Exemple 3

Cet exemple ajoute l’argument if_not_found dans l’exemple ci-dessus.

Exemple de la fonction XLOOKUP utilisée pour renvoyer le nom d’un employé et le service en fonction de l’IDENTIFIant de l’employé avec l’argument if_not_found. La formule est = mois. deXLOOKUPr (B2 ; B5 : B14 ; C5 : D14 ; 0 ; 1 ; "employé introuvable")

Exemple 4

L’exemple suivant recherche dans la colonne C les revenus personnels saisis dans la cellule E2 et recherche le taux de taxe correspondant dans la colonne B. Il définit l’argument if-not_found pour renvoyer la valeur 0 si rien n’est détecté. L’argument match_mode est défini sur 1, ce qui signifie que la fonction recherche une correspondance exacte, et si elle ne trouve pas une correspondance exacte, elle renvoie l’élément supérieur suivant. Enfin, l’argument search_mode est défini sur 1, ce qui signifie que la fonction recherche à partir du premier élément jusqu’à la dernière.

Image de la fonction XLOOKUP utilisée pour renvoyer un taux d’imposition basé sur le revenu maximal. Il s’agit d’une correspondance approximative. Formule : = XLOOKUP (E2 ; C2 : C7 ; B2 : B7 ; 1 ; 1)

Remarque : À la différence de la fonction RECHERCHEV, la colonne lookup_array se trouve à droite de la colonne return_array, dans laquelle RECHERCHEV ne peut pas voir de gauche à droite.

Exemple 5

Nous allons ensuite utiliser une fonction XLOOKUP imbriquée pour effectuer une correspondance verticale et horizontale. Dans le cas présent, il s' agit d’abord dans la colonne B, puis recherchez Trim1 dans la ligne supérieure du tableau (plage C5 : F5) et renvoyez la valeur à l’intersection des deux. Cela est similaire à l’utilisation conjointe des fonctions index et EQUIV . Vous pouvez également utiliser XLOOKUP pour remplacer la fonction RECHERCHEH .

Image de la fonction XLOOKUP utilisée pour renvoyer les données horizontales d’une table en imbriquant 2 XLOOKUPs. La formule est la suivante : = XLOOKUPur (D2, $B 6 : $B 17, XLOOKUP ($C 3 $C 5 : $G 5, $C 6 : $G 17))

La formule dans les cellules D3 : F3 est : = XLOOKUPur (D2, $B 6 : $B 17, XLOOKUP ($C 3 $C 5 : $G 5, $C 6 : $G 17)).

Exemple 6

Cet exemple utilise la fonction sommeet deux fonctions XLOOKUP imbriquées pour additionner toutes les valeurs comprises entre deux plages. Le cas échéant, nous voulons additionner les valeurs de raisins, de bananes et d’inclusion de poires qui sont entre les deux.

Utilisation de XLOOKUP avec somme pour totalr une plage de valeurs comprises entre deux sélections

La formule dans la cellule E3 est : = somme (XLOOKUP (B3 ; B6 : B10 ; E6 : E10) : XLOOKUPur (C3 ; B6 : B10 ; E6 : E10))

Comment cela fonctionne-t-il ? XLOOKUP renvoie une plage, ce qui signifie que lorsque celle-ci est calculée, la formule se termine comme suit : = somme ($E $7 : $E $9). Pour voir comment cela fonctionne, vous pouvez sélectionner une cellule contenant une formule XLOOKUP similaire à celle-ci, puis accéder aux formules > audit des formules > évaluer la formule, puis appuyer sur le bouton évaluer pour parcourir les calculs.

Remarque : Grâce au MVP Microsoft Excel, Bill Jelen, pour suggérer cet exemple.

Vous avez besoin d’une aide supplémentaire ?

Vous pouvez toujours consulter un expert de la communauté technique Excel, obtenir une assistance dans la communauté Answers ou suggérer une nouvelle fonctionnalité ou une amélioration sur le forum Excel User Voice.

Voir aussi

Fonction XMATCH

Fonctions Excel (par ordre alphabétique)

Fonctions Excel (par catégorie)

Remarque :  Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez vous nous dire si les informations vous ont été utiles ? Voici l’article en anglais pour référence.

Optimisez l’emploi de votre temps grâce à un abonnement

Besoin d’aide ?

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×