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 concaténer des cellules si la même valeur existe dans une autre colonne dans Excel?

combiner si même

Comme la capture d'écran de gauche illustrée, vous devez concaténer les cellules de la deuxième colonne si les valeurs de la première colonne sont identiques. Comment pouvez-vous y arriver?

Dans cet article, nous allons présenter trois méthodes pour y parvenir.

Concaténer les cellules si la même valeur avec des formules et filtrer

Concatène les cellules si la même valeur avec le code VBA

Concaténer facilement des cellules si la même valeur avec Kutools pour Excel


Advanced Combine Rows: combine facilement des cellules si la même valeur existe dans une autre colonne

Avec Kutools for Excel's Lignes de combinaison avancées utilitaire, vous pouvez facilement combiner des cellules dans une colonne si la même valeur existe dans une autre colonne dans Excel. Voir la capture d'écran:

contatiné de même

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!

Onglet Office Activer l'édition et la navigation par onglets dans Office, et simplifiez grandement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, graphiques et autres éléments les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement.
  • Plus que le texte 20 comprend: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Fusionner les outils: Plusieurs classeurs et feuilles en un; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils Split: Fractionner les données en plusieurs feuilles en fonction de la valeur; Un classeur pour plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller Sauter Lignes cachées / filtrées; Compte et somme par couleur de fond; Envoyez des e-mails personnalisés à plusieurs destinataires en bloc.
  • Super filtre: Créez des schémas de filtrage avancés et appliquez-les à toutes les feuilles. Trier par semaine, jour, fréquence et plus; Filtre en gras, formules, commentaires ...
  • Plus que de puissantes fonctionnalités 300; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.

Concaténer les cellules si la même valeur avec des formules et filtrer


Avec les formules ci-dessous, vous pouvez concaténer le contenu de la cellule correspondante si une autre colonne contient la même valeur dans Excel.

1. Sélectionnez une cellule vide à côté de la deuxième colonne (ici, nous sélectionnons la cellule C2), entrez la formule = IF (A2 <> A1, B2, C1 & "," & B2) dans la barre de formule, puis appuyez sur Entrer clé.

2. Sélectionnez ensuite la cellule C2 et faites glisser le handle de remplissage vers les cellules que vous devez concaténer.

3. Entrez la formule = IF (A2 <> A3, CONCATENER (A2, "," "", C2, "" ")," ") dans la cellule D2 et faites glisser la poignée de remplissage jusqu'aux cellules restantes.

4. Sélectionnez la cellule D1 et cliquez sur Data > Filtre. Voir la capture d'écran:

5. Cliquez sur la flèche déroulante dans la cellule D1, décochez la case (Blanks) boîte, puis cliquez sur le OK .

Vous pouvez voir que les cellules sont concaténées si les valeurs de la première colonne sont identiques.

Note: Pour utiliser les formules ci-dessus avec succès, les mêmes valeurs dans la colonne A doivent être continues.


Concatène les cellules si la même valeur avec le code VBA

En plus de la formule, dans cette section, nous allons vous montrer comment utiliser le code VBA pour concaténer des cellules si la même valeur.

1. presse autre + F11 clés pour ouvrir le Applications Microsoft Visual Basic fenêtre.

2. dans le Applications Microsoft Visual Basic fenêtre, cliquez sur insérer > Module. Ensuite, copiez et collez le code ci-dessous dans le Module fenêtre.

Code VBA: concaténer les cellules si les mêmes valeurs

Sub ConcatenateCellsIfSameValues()
	Dim xCol As New Collection
	Dim xSrc As Variant
	Dim xRes() As Variant
	Dim I As Long
	Dim J As Long
	Dim xRg As Range
	xSrc    = Range("A1", Cells(Rows.Count, "A").End(xlUp)).Resize(, 2)
	Set xRg = Range("D1")
	On Error Resume Next
	For I = 2 To UBound(xSrc)
		xCol.Add xSrc(I, 1), TypeName(xSrc(I, 1)) & CStr(xSrc(I, 1))
	Next I
	On Error GoTo 0
	ReDim xRes(1 To xCol.Count + 1, 1 To 2)
	xRes(1, 1) = "No"
	xRes(1, 2) = "Combined Color"
	For I = 1 To xCol.Count
		xRes(I + 1, 1) = xCol(I)
		For J = 2 To UBound(xSrc)
			If xSrc(J, 1) = xRes(I + 1, 1) Then
				xRes(I + 1, 2) = xRes(I + 1, 2) & ", " & xSrc(J, 2)
			End If
		Next J
		xRes(I + 1, 2) = Mid(xRes(I + 1, 2), 2)
	Next I
	Set xRg = xRg.Resize(UBound(xRes, 1), UBound(xRes, 2))
	xRg.NumberFormat = "@"
	xRg = xRes
	xRg.EntireColumn.AutoFit
End Sub

Remarques:

1. D1 en ligne Définir xRg = Range ("D1") signifie que le résultat sera placé dans la cellule D1.

2. Non et Couleur combinée en ligne xRes (1, 1) = "Non" et xRes (1, 2) = "Couleur combinée" sont les en-têtes des colonnes concaténées. Vous pouvez les changer selon vos besoins.

3. appuie sur le F5 clé pour exécuter le code, alors vous obtiendrez les résultats concaténés dans la gamme spécifiée.


Concaténer facilement des cellules si même valeur avec Kutools pour Excel (plusieurs clics)

Si les deux méthodes ci-dessus sont compliquées pour vous, nous vous montrerons ici Lignes de combinaison avancées utilité de Kutools for Excel. Vous pouvez facilement concaténer les cellules par virgule, point-virgule, etc., si les mêmes valeurs existent dans une autre colonne.

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

1. Sélectionnez la plage avec les cellules à concaténer, puis cliquez sur Kutools > Contenu > Lignes de combinaison avancées. Voir la capture d'écran:

2. dans le Combiner les lignes basées sur la colonne boîte de dialogue, vous devez procéder comme suit.

A. Sélectionnez la colonne avec la même valeur que vous souhaitez concaténer les cellules en fonction de, puis cliquez sur le Clé primaire .

B. Sélectionnez la colonne que vous souhaitez concaténer, cliquez sur Combiner Cliquez sur le bouton, puis spécifiez un séparateur dans le menu contextuel (ici, nous sélectionnons Virgule).

C. Cliquez sur le OK bouton. Voir la capture d'écran:

Maintenant, les cellules sont concaténées en fonction de la colonne de clé primaire.


Concatène plusieurs valeurs de cellule et ajoute de l'espace ou d'autres délimiteurs entre les mots:

Avec Kutools for Excel's Combiner Utilitaire, vous pouvez rapidement combiner plusieurs lignes, colonnes ou cellules dans une colonne, une ligne ou une cellule avec un séparateur spécifique, comme vous le souhaitez dans Excel. Voir la capture d'écran:

contatiné de même

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!


Concaténer facilement des cellules si la même valeur avec Kutools pour Excel

Kutools for Excel comprend plus de 300 outils maniables Excel. Gratuit pour essayer sans limitation dans les jours 60. Téléchargez l'essai gratuit maintenant!


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture 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é de 50% et réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
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.
    Jade · 3 months ago
    Hi, first of all thanks for creating this resource. I have been trying to figure this out for a couple of hours and I'm stuck. I'm using your 'concatenate cells if same value' but my script is looking at column "D" instead of "A. I can't figure out how to get it to use a different column for the data besides the one right next to it. In my cases I want it to look at column "D" to see if the value is the same and if so, it will grab the data from column "H" and put that data from column "H' into a cell in column "J". How do I switch this to use column "H" for the data? Thx


    Sub ConcatenateCellsIfSameValues()
    Dim xCol As New Collection
    Dim xSrc As Variant
    Dim xRes() As Variant
    Dim I As Long
    Dim J As Long
    Dim xRg As Range
    xSrc = Range("D1", Cells(Rows.Count, "D").End(xlUp)).Resize(, 2)
    Set xRg = Range("J1")
    On Error Resume Next
    For I = 2 To UBound(xSrc)
    xCol.Add xSrc(I, 1), TypeName(xSrc(I, 1)) & CStr(xSrc(I, 1))
    Next I
    On Error GoTo 0
    ReDim xRes(1 To xCol.Count + 1, 1 To 2)
    xRes(1, 1) = "No"
    xRes(1, 2) = "Products"
    For I = 1 To xCol.Count
    xRes(I + 1, 1) = xCol(I)
    For J = 2 To UBound(xSrc)
    If xSrc(J, 1) = xRes(I + 1, 1) Then
    xRes(I + 1, 2) = xRes(I + 1, 2) & vbCrLf & xSrc(J, 2)
    End If
    Next J
    xRes(I + 1, 2) = Mid(xRes(I + 1, 2), 2)
    Next I
    Set xRg = xRg.Resize(UBound(xRes, 1), UBound(xRes, 2))
    xRg.NumberFormat = "@"
    xRg = xRes
    xRg.EntireColumn.AutoFit
    End Sub
  • To post as a guest, your comment is unpublished.
    Harry Vyvey · 5 months ago
    Hi,

    looks like 2 of your formulas are wrong :

    =IF(A2<>A3,CONCATENATE(A2,",""",C2,""""),""). You need to change "A2" to "D1". As you'll want to add the string to the previous cell.

    same goes for this formula :

    =IF(A2<>A1,B2,C1 & "," & B2) : Change C1 to D1.


    kind regards


    Harry
  • To post as a guest, your comment is unpublished.
    James · 1 years ago
    I use this VBA for lots of my spreadsheets and its great. But the spreadsheets have become very large 50k+ rows and it doesnt seem to be working any more. If I use it on 1000 rows it works fine but large sets of data it cant seem to cope with. No errors just no results. Any help would be appreciated.
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi James,
      I tested the code as you mentioned, but it still works well in my case even I set the rows to 1000+.
  • To post as a guest, your comment is unpublished.
    Matt Carrington · 1 years ago
    Using the VBA macro and getting great results, I have tried tweaking it slightly for my needs but cant get it to work so I hope you can help.

    Which bit do I change to make it concat a specific column, not the one directly to the right of the xSrc = Range?

    Thanks for your great work!
    • To post as a guest, your comment is unpublished.
      Matt Carrington · 1 years ago
      Or as a better option, if you had 3 columns instead of 2 and found duplicates in column A (like your example) can you concat column B into a cell and column C into a seperate cell? So if you had columns of Number, Colour, Age, could you concat colour and age into different columns upon finding duplicates in Number? Hope that makes sense!
  • To post as a guest, your comment is unpublished.
    Ram · 1 years ago
    This is exactly what I needed...thank you
  • To post as a guest, your comment is unpublished.
    RS · 1 years ago
    I am so thankful to you for these formulas. Fantastic work!
  • To post as a guest, your comment is unpublished.
    Marissa W · 2 years ago
    The concatenate feature does not work. Combines all the rows into one cell despite different keys.
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Dear Marissa,
      Sorry I am not sure I got your question. There are three methods in the article, which concatenate feature do you mean?
  • To post as a guest, your comment is unpublished.
    Geoffrey saya · 2 years ago
    How can i merge collums with the same names eg Column one reads Kenya throughout and collumn 2 reads western, Nyanza( appearing more than ten times) and column 3 three names of districts. I want to get how mang districts do we have in every province but keep the columns.
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Dear Geoffrey,

      Please try the Advanced Combine Rows utility we mentioned in above method two. If you want to keep the columns, please make a copy of the original range and do everything in the copied range.

      Specify the province column as Primary Key, set the Column 1 as Keep 1st, and then set the district column as Calculate > Count.

      After that, you will get how many district you have in every province.
  • To post as a guest, your comment is unpublished.
    cathy postmus · 3 years ago
    Can't seem to concatenate with more than 2 cells using formulas and filters