Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment renvoyer plusieurs valeurs de recherche dans une cellule séparée par des virgules?

Dans Excel, nous pouvons appliquer la fonction VLOOKUP pour renvoyer la première valeur correspondante à partir des cellules d'un tableau, mais parfois, nous devons extraire toutes les valeurs correspondantes, puis les séparer par un délimiteur spécifique, comme une virgule, un tiret, etc. cellule comme capture d'écran suivante illustrée. Comment pourrions-nous obtenir et renvoyer plusieurs valeurs de recherche dans une cellule séparée par des virgules dans Excel?

doc renvoie plusieurs valeurs séparées par des virgules 1

Renvoyer plusieurs valeurs de recherche dans une cellule séparée par une virgule avec la fonction définie par l'utilisateur

Renvoyer plusieurs valeurs de recherche dans une cellule séparée par des virgules avec Kutools for Excel


Renvoyer plusieurs valeurs de recherche dans une cellule séparée par une virgule avec la fonction définie par l'utilisateur

Normalement, il n'y a pas de moyen direct pour extraire et renvoyer les multiples valeurs correspondantes et séparées par une virgule dans une cellule, ici, vous pouvez créer une fonction définie par l'utilisateur pour résoudre ce travail, procédez comme suit:

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: renvoie plusieurs valeurs de recherche dans une cellule séparée par des virgules

Function SingleCellExtract(LookupValue As String, LookupRange As Range, ColumnNumber As Integer, Char As String)
'Updateby20150824
    Dim I As Long
    Dim xRet As String
    For I = 1 To LookupRange.Columns(1).Cells.Count
        If LookupRange.Cells(I, 1) = LookupValue Then
            If xRet = "" Then
                xRet = LookupRange.Cells(I, ColumnNumber) & Char
            Else
                xRet = xRet & "" & LookupRange.Cells(I, ColumnNumber) & Char
            End If
        End If
    Next
    SingleCellExtract = Left(xRet, Len(xRet) - 1)
End Function

3. Puis enregistrez ce code et fermez la fenêtre Module, revenez à votre feuille de calcul et entrez cette formule: = SingleCellExtract (D2, A2: B15,2, ",") dans une cellule vide que vous souhaitez renvoyer le résultat. Et puis appuyez sur Entrer clé pour obtenir le résultat, voir capture d'écran:

doc renvoie plusieurs valeurs séparées par des virgules 2

Note: Dans la formule ci-dessus:

D2: indique les valeurs de cellule que vous voulez rechercher;

A2: B15: est la plage de données à laquelle vous voulez extraire les données;

2: le nombre 2 est le numéro de la colonne à laquelle la valeur correspondante doit être retournée;

,: la virgule est le séparateur que vous voulez séparer les valeurs multiples.

Vous pouvez les changer selon vos besoins.


Renvoyer plusieurs valeurs de recherche dans une cellule séparée par des virgules avec Kutools for Excel


Si vous avez Kutools for Excel, cette tâche ne sera plus un problème. le Lignes de combinaison avancées L'utilitaire peut vous aider à combiner toutes les valeurs relatives en fonction d'une colonne.

Kutools for Excel : avec plus de 300 compléments Excel pratiques, libre d'essayer sans limitation dans 60 jours.

Après l'installation de Kutools for Excel, s'il vous plaît faites comme suit:

1. Sélectionnez la plage de données que vous souhaitez combiner toutes les valeurs correspondantes en fonction d'une colonne.

2. Cliquez Kutools > Contenu > Lignes de combinaison avancées, voir capture d'écran:

doc renvoie plusieurs valeurs séparées par des virgules 3

3. Dans le Combiner les lignes basées sur la colonne Cliquez sur le nom de la colonne que vous souhaitez combiner en fonction de, puis cliquez sur Clé primaire bouton, voir capture d'écran:

doc renvoie plusieurs valeurs séparées par des virgules 4

4. Puis cliquez sur le nom de la colonne que vous souhaitez combiner les valeurs correspondantes, puis cliquez sur Combiner choisir un séparateur pour séparer les valeurs combinées, voir capture d'écran:

doc renvoie plusieurs valeurs séparées par des virgules 5

5. Puis clique OK bouton, toutes les cellules correspondantes ayant la même valeur ont été combinées en une seule cellule séparées par une virgule, voir les captures d'écran:

doc renvoie plusieurs valeurs séparées par des virgules 6  2 doc renvoie plusieurs valeurs séparées par des virgules 7

Cliquez pour en savoir plus sur cet utilitaire Advanced Combine Rows ...

Télécharger et tester gratuitement Kutools for Excel maintenant!


Demo: Renvoie plusieurs valeurs de recherche dans une cellule séparée par des virgules avec Kutools for Excel

Kutools for Excel: avec plus que 200 compléments Excel pratiques, libre d'essayer sans limitation dans les jours 60. Téléchargez et essai gratuit maintenant!



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Js · 11 months ago
    VB command breaks when the range is longer than 154 rows (ie :B154)....
  • To post as a guest, your comment is unpublished.
    M Macklam · 1 years ago
    thank you, firstly i managed to get this to work without the slow down in performance. I'm using values rather that text so my question is i want to bring back all those with less than say 19 points in a list. Can the single cell Extract work for that or does it have to be a specific value?
  • To post as a guest, your comment is unpublished.
    A Ward · 1 years ago
    This simply does not work. I was unable to get it to work in my own application, so I copy/pasted the vba and the formula and it returned an error every time
  • To post as a guest, your comment is unpublished.
    K Ray · 1 years ago
    This works but slows down my excel majorly! Any tips to help speed?
  • To post as a guest, your comment is unpublished.
    Guest · 1 years ago
    Thanks for this post. Do you know how I would go about manipulating the two separate integers this is creating. For example, lets say that the '=SingleCellExtract' function now produces (1 , 2). Is there a way to have a cell next to it that does (1+.5 , 2+.5)?