Comment exclure les doublons dans le résultat de recherche d’un tableau Vlookup dans Google Sheets

Vlookup peut renvoyer plusieurs valeurs mais celles-ci peuvent contenir des doublons. J’ai une formule utile pour exclure les doublons dans le résultat de recherche d’un tableau Vlookup dans Google Sheets. Cette formule va simplement ignorer les clés de recherche en double.

Je veux dire que j’ai des clés de recherche dans un tableau qui peuvent contenir des doublons. Je veux que la recherche Vlookup ne recherche que la première apparition de la clé de recherche.

Dans l’exemple ci-dessus, j’ai une formule de tableau Vlookup dans la cellule B2 (vous pourrez obtenir cette formule plus tard). Les clés de recherche sont dans A2:A et contiennent des doublons.

Vlookup renvoie une cellule vide pour les doublons. Si vous utilisez une formule Vlookup normale comme celle ci-dessous, à part les valeurs existantes dans B2:B, elle renverra 4,00 $ en B6, 3,50 $ en B7, 3,75 $ en B8 et 3,00 $ en B10.

=ArrayFormula(VLOOKUP(A2:A10,F2:G6,2,0))

Note: Vous voulez en savoir plus sur l’utilisation de Vlookup dans un tableau ? Suivez mon précédent tutoriel sur ce sujet – Comment utiliser Vlookup pour retourner un résultat de tableau dans Google Sheets.

La formule ci-dessus ne peut pas exclure les doublons. Alors comment exclure les doublons dans le résultat de recherche d’un tableau Vlookup dans Google Sheets ?

À cette fin, j’utilise la fonction MATCH avec Vlookup dans un test logique. Voici comment je vais faire cela.

Exclure les doublons dans le résultat de recherche d’un tableau Vlookup dans Google Sheets

La formule maîtresse Vlookup qui ignore les doublons

Voici la formule que j’ai utilisée dans la cellule B2.

=ArrayFormula(IFERROR(if(len(A2:A),if(row($A$1:$A)-match(A2:A,A2:A,0)=0,VLOOKUP(A2:A,F2:G6,2,FALSE),),)))

La fonction MATCH est l’âme de la formule ci-dessus qui exclut les doublons dans le résultat de recherche multiple de Vlookup.

La formule ci-dessus prend en charge un nombre illimité de clés de recherche dans la colonne A. Pour la plage actuelle, la formule suivante serait suffisante. J’ai supprimé tous les éléments inutiles de la formule maîtresse ci-dessus ici.

=ArrayFormula(if(row($A$1:$A9)-match(A2:A10,A2:A10,0)=0,VLOOKUP(A2:A10,F2:G6,2,FALSE),))

Je vais expliquer cette formule pour que vous puissiez facilement la comprendre. Voici cette explication.

Explication de la formule

Pour exclure les doublons dans le résultat du tableau Vlookup, je fais un test logique IF. Voyez d’abord la syntaxe de IF.

IF(expression_logique, valeur_si_vrai, valeur_si_faux)

Dans ce cas, j’utilise une formule MATCH comme expression_logique.

La valeur_si_vrai est une formule Vlookup normale qui renvoie plusieurs valeurs (résultat de tableau) incluant les doublons.

Ensuite, la valeur_si_faux est laissée vide.

Ainsi, vous ne voulez apprendre que l’expression_logique. Qu’est-ce que c’est ?

Voyez l’expression logique.

=row($A$1:$A9)-match(A2:A10,A2:A10,0)=0

Si vous entrez cette formule indépendamment dans votre feuille de calcul pour la tester, cela ne fonctionnera pas. Vous devez soit entrer cette formule sous forme de formule de tableau en utilisant Ctrl+Shift+Enter, soit vous pouvez envelopper la formule ci-dessus avec la fonction ARRAYFORMULA.

Le rôle de la fonction MATCH pour exclure les clés de recherche en double de Vlookup

La formule MATCH renvoie la position relative des clés de recherche. Si la même clé se répète, elle renvoie la première position relative.

Par exemple, voyez la clé de recherche « Mango ».

La position relative des doublons sera la même. Par exemple, l’élément « Mango » conserve sa position relative lors de sa deuxième occurrence.

La position relative du premier élément sera 1, le deuxième élément sera 2, et ainsi de suite. Il y a 10 clés de recherche et il y aurait 10 positions relatives, y compris les doublons.

Donc, lorsque vous soustrayez les positions relatives des numéros de série de 1 à 10 (j’ai utilisé la fonction ROW pour renvoyer les numéros de série de 1 à 10), vous obtenez 0 pour toutes les clés de recherche lors de leur première occurrence.

Cela signifie que si l’expression logique renvoie 0, c’est la première occurrence. Maintenant, il est temps de revoir ma formule pour comprendre comment exclure les doublons dans le résultat du tableau Vlookup dans Google Sheets.

=ArrayFormula(if(row($A$1:$A9)-match(A2:A10,A2:A10,0)=0,VLOOKUP(A2:A10,F2:G6,2,FALSE),))

Si l’expression logique renvoie 0, IF exécute la recherche Vlookup (valeur_si_vrai) sinon elle renvoie une cellule vide (valeur_si_faux). C’est tout.

Ressources supplémentaires sur Vlookup :

  1. Utilisation de combinaisons de mots-clés dans Vlookup dans Sheets.
  2. Dernier enregistrement Vlookup dans chaque groupe dans Google Sheets.
  3. Comment Vlookup Importrange dans Google Sheets.
  4. Vlookup de bas en haut dans Google Docs Sheets.
  5. Résultat de Vlookup plus les prochaines ‘n’ lignes dans Google Sheets.
  6. Créer un lien hypertexte vers la cellule de sortie Vlookup dans Google Sheets.
  7. Vlookup saute les lignes masquées dans Google Sheets.

Articles en lien