Comment effectuer une recherche VLOOKUP et concaténer plusieurs valeurs correspondantes dans Excel ?
Lorsque vous utilisez VLOOKUP dans Excel, il renvoie généralement la première valeur correspondante d'un jeu de données. Cependant, il existe des scénarios où vous pourriez avoir besoin de retourner et concaténer plusieurs valeurs correspondantes (par exemple, tous les noms associés à une classe spécifique). Comme VLOOKUP seul ne peut pas réaliser cela, nous explorerons des techniques avancées pour obtenir le résultat souhaité.

Recherche VLOOKUP et concaténation de plusieurs valeurs correspondantes dans Excel
Recherche VLOOKUP et concaténation de plusieurs valeurs correspondantes avec les fonctions TEXTJOIN et FILTER
Si vous utilisez Excel 365 ou Excel 2021, la combinaison des fonctions TEXTJOIN et FILTER offre un moyen puissant et efficace de concaténer plusieurs valeurs correspondantes.
Dans la cellule cible, entrez la formule suivante, puis faites glisser la formule vers d'autres cellules pour remplir les cellules. Toutes les valeurs correspondantes sont extraites et combinées en une seule cellule. Voir capture d'écran :
=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$16, $A$2:$A$16=D2, ""))
- FILTER($B$2:$B$16, $A$2:$A$16=D2, ""): Renvoie un tableau contenant toutes les valeurs qui répondent à la condition.
- $B$2:$B$16: La plage de données à filtrer.
- $A$2:$A$16=D2: La condition de filtrage, où les valeurs dans $A$2:$A$16 doivent être égales à la valeur dans la cellule D2.
- TEXTJOIN(", ", TRUE, ...): Combine toutes les valeurs correspondantes en une seule chaîne, séparée par une virgule et un espace.
- ", ": Le délimiteur utilisé pour séparer chaque valeur (dans ce cas, une virgule et un espace).
- TRUE: Ignore les valeurs vides pour s'assurer qu'aucun délimiteur supplémentaire n'est inclus.
Recherche VLOOKUP et concaténation de plusieurs valeurs correspondantes avec Kutools pour Excel
Fatigué des limitations de VLOOKUP d'Excel lorsqu'il s'agit de gérer plusieurs valeurs correspondantes ? Mais avec la fonction Recherche Un-à-Plusieurs de Kutools pour Excel, vous pouvez facilement rechercher et concaténer plusieurs valeurs correspondantes en quelques clics seulement !
Après avoir installé Kutools pour Excel, veuillez procéder comme suit :
Cliquez sur "Kutools" > "Super RECHERCHEV" > "Recherche un-à-plusieurs (retourne plusieurs résultats)" pour ouvrir la boîte de dialogue. Dans la boîte de dialogue, spécifiez les opérations comme ci-dessous :
- Sélectionnez la "Zone de placement de la liste" et les "Plages de valeurs à rechercher" dans les champs de texte respectivement ;
- Sélectionnez la plage du tableau que vous souhaitez utiliser ;
- Spécifiez la colonne clé et la colonne de retour depuis les listes déroulantes "Colonne clé" et "Colonne de retour" respectivement ;
- Enfin, cliquez sur le bouton OK.
Résultat: Maintenant, toutes les valeurs correspondantes sont concaténées dans une seule cellule. Voir capture d'écran :
Recherche VLOOKUP et concaténation de plusieurs valeurs correspondantes avec une fonction définie par l'utilisateur
Si vous êtes à l'aise avec VBA (Visual Basic for Applications), vous pouvez créer une Fonction Définie par l'Utilisateur (UDF) pour concaténer plusieurs valeurs correspondantes. Cette méthode fonctionne dans toutes les versions d'Excel.
1. Maintenez les touches "ALT + F11" enfoncées pour ouvrir la fenêtre "Microsoft Visual Basic pour Applications".
2. Cliquez sur "Insérer" > "Module", puis collez le code suivant dans la fenêtre Module.
Code VBA : Recherche VLOOKUP et concaténation de plusieurs valeurs correspondantes dans une cellule
Function ConcatenateMatches(LookupValue As String, LookupRange As Range, ReturnRange As Range, Optional Delimiter As String = ", ") As String
'Updateby Extendoffice
Dim Cell As Range
Dim Result As String
Result = ""
For Each Cell In LookupRange
If Cell.Value = LookupValue Then
Result = Result & Cell.Offset(0, ReturnRange.Column - LookupRange.Column).Value & Delimiter
End If
Next Cell
If Result <> "" Then
Result = Left(Result, Len(Result) - Len(Delimiter))
End If
ConcatenateMatches = Result
End Function
3. Ensuite, enregistrez et fermez ce code, revenez à la feuille de calcul, et entrez cette formule : =ConcatenateMatches(D2, $A$2:$A$16, $B$2:$B$16) dans une cellule vide où vous souhaitez placer le résultat, puis faites glisser la poignée de recopie vers le bas pour appliquer la formule à d'autres cellules. Toutes les valeurs correspondantes basées sur des données spécifiques ont été retournées dans une seule cellule avec des séparateurs virgule et espace, voir capture d'écran :
- D2: Il s'agit de la valeur que vous recherchez dans la plage spécifiée (LookupValue).
- A2:A16: La plage où la fonction recherche la valeur de recherche (LookupRange).
- B2:B16: La plage contenant les valeurs à concaténer lorsque la valeur de recherche correspond (ReturnRange).
La concaténation de plusieurs valeurs correspondantes dans Excel peut être réalisée via diverses méthodes, chacune ayant ses propres avantages. Que vous préfériez utiliser des fonctions intégrées comme TEXTJOIN et FILTER, des outils tiers comme Kutools, ou des solutions VBA personnalisées, l'essentiel est de choisir la méthode qui convient le mieux à votre version d'Excel, à votre niveau de compétence et à vos besoins spécifiques. Si vous êtes intéressé par l'exploration de plus d'astuces et de conseils Excel, notre site Web propose des milliers de tutoriels.
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !