Accueil
» BUREAU MS
»
LibreOffice Calc VLOOKUP vs XLOOKUP: A Beginner-Friendly Functions Guide
LibreOffice Calc VLOOKUP vs XLOOKUP: A Beginner-Friendly Functions Guide
LibreOffice Calc gives you more than one way to find a value in a table and return related data. For years, VLOOKUP was the familiar choice. Today, Calc also includes XLOOKUP, a newer lookup function that removes several VLOOKUP limitations and is usually easier to maintain.
This guide starts with the basic mental model, then walks through practical formulas you can copy into a small spreadsheet. It also explains where INDEX/MATCH still fits, what can go wrong, and which function makes sense for a new workbook.
What should you know before using lookup functions?
A lookup searches one range for a key, such as a product ID, then returns a related value, such as the product price. The search key might be text, a number, a date, or a cell reference.
In current LibreOffice Help, XLOOKUP is documented as a modern replacement for VLOOKUP, HLOOKUP, and LOOKUP. XLOOKUP has been available since LibreOffice 24.8. The current LibreOffice 26.8 Help documents exact and approximate matching, wildcard and regular-expression matching, reverse search, and binary search. See the official LibreOffice XLOOKUP documentation.
One detail that often surprises people coming from Microsoft Excel: LibreOffice formula examples commonly use semicolons between arguments. For example, =XLOOKUP(F2;A2:A6;D2:D6). Calc may adapt separators to your locale, so follow the separator that your installation accepts.
VLOOKUP vs XLOOKUP at a glance
Capability
VLOOKUP
XLOOKUP
Exact match
Yes, but you normally specify 0/FALSE
Yes; exact match is the default
Return a value to the left of the search column
No, not directly
Yes
Separate search and return ranges
No; uses one table array plus a column index
Yes
Built-in result when no match is found
No dedicated argument
Yes
Search from last item to first
No direct search-mode argument
Yes
Approximate match
Yes
Yes, with explicit match modes
Available in LibreOffice before 24.8
Yes
No
Prepare a small practice table
Create columns A through D with the headers Product ID, Product Name, Category, and Price. Add a few IDs such as P001 through P005. Put the ID you want to search for in F2 and place your formula in G2.
Formulas in Calc begin with an equals sign. You can type them directly into a cell or into the Formula Bar; the official LibreOffice formula-entry guide describes both methods.
Step 1: Use VLOOKUP for a basic exact match
Suppose P004 is in F2 and you want the price from column D. Enter:
=VLOOKUP(F2;$A$2:$D$6;4;0)
Les arguments signifient : rechercher la valeur en F2, effectuer une recherche dans la première colonne de A2:D6, renvoyer la valeur de la quatrième colonne de ce tableau, et exiger une correspondance exacte. Le signe dollar crée des références absolues , ce qui permet de conserver la plage de recherche fixe même si vous copiez la formule dans d’autres cellules.
Une correspondance exacte de base avec RECHERCHEV : la clé de recherche se trouve en F2, le tableau est A2:D6 et la colonne 4 fournit le prix.
LibreOffice décrit la fonction RECHERCHEV comme une recherche verticale où la valeur recherchée doit figurer dans la première colonne du tableau et la valeur renvoyée provient de la colonne située à sa droite. Il précise également que si le dernier argument est omis ou si la valeur est VRAI, la fonction considère les données comme triées et peut renvoyer une correspondance approximative. Consultez la documentation officielle des fonctions de tableur de LibreOffice avant de vous fier au comportement approximatif de RECHERCHEV.
Étape 2 : Utilisez la fonction RECHERCHEX lorsque la colonne de retour se trouve à gauche.
Réorganisez maintenant le tableau de sorte que le nom du produit se trouve dans la colonne A et l'identifiant du produit dans la colonne C. Avec la fonction RECHERCHEV, cette disposition est peu pratique car elle ne recherche que dans la première colonne du tableau et renvoie les valeurs situées à droite.
La fonction RECHERCHEX sépare le tableau de recherche du tableau de résultats . Pour trouver P003 dans la colonne C et renvoyer le nom du produit de la colonne A, utilisez :
=XLOOKUP(F2;$C$2:$C$6;$A$2:$A$6;"Not found")
La fonction RECHERCHEX permet de rechercher dans une colonne et de renvoyer une valeur de la colonne située à sa gauche sans réorganiser le tableau.
Le quatrième argument est la valeur à renvoyer lorsqu'aucune correspondance n'est trouvée. Cela rend la formule plus lisible que d'encapsuler la recherche dans une fonction de gestion d'erreurs distincte pour ce cas fréquent.
Étape 3 : Gérer les identifiants manquants sans afficher #N/A
Si un utilisateur saisit un identifiant inexistant, une recherche exacte simple produit généralement un résultat nul #N/A. Dans la fonction RECHERCHEX, placez un résultat convivial dans le quatrième argument :
=XLOOKUP(F2;$A$2:$A$6;$D$2:$D$6;"Not found";0)
Le 0mode de correspondance exacte exige explicitement une correspondance exacte, bien que ce soit déjà le comportement par défaut de la fonction RECHERCHEX. L'utiliser peut néanmoins s'avérer utile pour que l'objectif de la formule soit clair pour toute personne consultant la feuille de calcul.
XLOOKUP peut renvoyer un message d'erreur lisible tel que « Introuvable » lorsqu'une correspondance exacte est indisponible.
Ne masquez pas automatiquement toutes les erreurs. Si un identifiant doit toujours exister, #N/Ail peut être utile car il révèle des données sources erronées ou incomplètes. Utilisez une solution de repli conviviale lorsque des clés manquantes sont attendues, et non lorsqu'elles indiquent un problème de qualité des données.
Étape 4 : Recherchez à partir du bas pour obtenir l’enregistrement correspondant le plus récent.
Il arrive qu'une clé apparaisse plusieurs fois. Par exemple, un journal des transactions peut contenir plusieurs lignes pour le client C001. La fonction RECHERCHEX possède un argument Mode de recherche . Sa valeur permet -1de rechercher à partir du dernier élément vers le premier.
Pour renvoyer le montant de la dernière ligne contenant l'identifiant client en F2, utilisez :
=XLOOKUP(F2;$A$2:$A$8;$D$2:$D$8;"Not found";0;-1)
En mode de recherche -1, XLOOKUP commence au bas du tableau de recherche et renvoie le dernier enregistrement client correspondant.
La documentation officielle de XLOOKUP définit les modes de recherche 1comme étant du premier au dernier élément et -1du dernier au premier. Elle propose également des modes de recherche binaire 2, -2mais ceux-ci nécessitent des données correctement triées. L'utilisation de la recherche binaire sur des données non triées peut renvoyer des résultats invalides.
Quand faut-il encore utiliser INDEX et EQUIV ?
Avant l'arrivée de la fonction RECHERCHEX dans Calc 24.8, une alternative flexible courante consistait à utiliser INDEX et EQUIV . EQUIV trouve la position relative d'une clé ; INDEX renvoie la valeur à cette position. Par exemple :
=INDEX($D$2:$D$6;MATCH(F2;$A$2:$A$6;0))
Cela reste utile lorsque vous avez besoin de compatibilité avec d'anciennes installations de LibreOffice ou lorsqu'un classeur existant utilise déjà systématiquement INDEX/MATCH. La documentation officielle des fonctions de tableur décrit à la fois INDEX et MATCH .
Calc propose également la fonction XMATCH à partir de LibreOffice 24.8. XMATCH ajoute des modes de correspondance et de recherche similaires à XLOOKUP, y compris la recherche inversée. Consultez la documentation officielle de LibreOffice concernant XMATCH .
Erreurs courantes à éviter
Laissez le dernier argument de la fonction RECHERCHEV vide lorsque vous avez besoin d'une correspondance exacte.
Avec la fonction RECHERCHEV, l'omission du dernier argument active le comportement de recherche par plage triée. Pour les identifiants de produit, les numéros d'employé, les UGS et autres identifiants discrets, utilisez VRAI 0ou FAUX pour une correspondance exacte, sauf si une correspondance approximative est intentionnellement prévue.
Comptage de l'index de colonne RECHERCHEV incorrect
L'index de la colonne RECHERCHEV est calculé à partir de la première colonne de la matrice, et non à partir des lettres de colonne de la feuille de calcul. Dans la plage A2:D6, la colonne D correspond à l'index 4. Si vous insérez ultérieurement une colonne dans cette matrice, l'index initial risque de ne plus pointer vers le champ souhaité.
Utilisation de plages de longueurs différentes dans XLOOKUP
Vos tableaux de recherche et de résultats doivent être alignés ligne par ligne ou colonne par colonne. Associer une plage de recherche comme A2:A100 à D2:D90 constitue une erreur de conception, car les positions correspondantes ne couvrent pas les mêmes enregistrements.
Utilisation de la recherche binaire sur des données non triées
La fonction RECHERCHEX utilise le mode 2 pour trier les données par ordre croissant, et le mode -2 pour un ordre décroissant. La documentation de LibreOffice indique clairement que des données non triées peuvent produire des résultats invalides. Si vous ne contrôlez pas le tri, utilisez les modes de recherche classiques (direct ou inverse).
Confondre les caractères génériques avec les expressions régulières
Calc prend en charge la correspondance avec caractères génériques et expressions régulières, mais il s'agit de modes de correspondance distincts dans XLOOKUP. Le mode caractères génériques utilise des caractères tels que «* & » et «? \ » ; le mode expressions régulières utilise le moteur d'expressions régulières de Calc. Choisissez le mode délibérément plutôt que de supposer qu'un modèle sera interprété automatiquement.
Quelle fonction de recherche un débutant doit-il choisir ?
Pour une nouvelle feuille de calcul exécutée sous LibreOffice 24.8 ou version ultérieure, commencez par la fonction RECHERCHEX. Ses plages de recherche et de résultats distinctes sont plus lisibles, la correspondance exacte est activée par défaut, les retours à gauche sont simples et les options intégrées de recherche inversée et de recherche introuvable réduisent le besoin de recourir à des formules complexes.
Utilisez la fonction RECHERCHEV lorsque vous gérez un classeur existant conçu autour de cette fonction, que vous le partagez avec des environnements où la prise en charge de RECHERCHEX est incertaine, ou que vous travaillez avec un tableau simple et stable dont les limitations n'ont pas d'importance. Utilisez INDEX/EQUIV lorsque la compatibilité avec les anciennes versions de LibreOffice est importante ou que le classeur suit déjà ce modèle.
L'habitude la plus importante est de ne pas mémoriser chaque argument. Avant d'écrire la formule, il est préférable d'identifier quatre éléments : la valeur recherchée, la plage de valeurs, la plage de valeurs à partir de laquelle le résultat doit être trouvé et le comportement attendu si la valeur clé est absente. Une fois ces éléments définis, le choix entre RECHERCHEV, RECHERCHEX et INDEX/EQUIV devient beaucoup plus simple.