Comment concaténer des valeurs uniques dans Excel ?
Concaténer des valeurs uniques dans Excel est une tâche courante qui peut être réalisée par diverses méthodes. Cet article explorera différentes techniques pour concaténer des valeurs uniques dans une colonne et lister les valeurs uniques tout en concaténant leurs valeurs correspondantes.
Concaténer uniquement les valeurs uniques d'une colonne
- En utilisant les fonctions TEXTJOIN et UNIQUE
- En utilisant Kutools AI Aide
- En utilisant une fonction définie par l'utilisateur
Lister les valeurs uniques et concaténer les valeurs correspondantes
- En utilisant les fonctions TEXTJOIN et UNIQUE
- En utilisant Kutools for Excel
- En utilisant du code VBA
Concaténer uniquement les valeurs uniques d'une colonne
Dans l'analyse de données, il arrive que vous ayez besoin de concaténer des valeurs uniques d'une colonne dans Excel en une seule cellule. Cette tâche peut être réalisée à l'aide de formules, de VBA ou de Kutools, selon vos préférences et la complexité du jeu de données. Ci-dessous, nous explorerons des méthodes optimisées pour gérer cela efficacement.
Méthode 1 : Utilisation des fonctions TEXTJOIN et UNIQUE
Si vous utilisez Excel 365 ou Excel 2021, ses nouvelles fonctions TEXTJOIN et UNIQUE offrent une manière simple et efficace de concaténer des valeurs uniques d'une colonne.
Utilisez la formule suivante dans une cellule où vous souhaitez obtenir le résultat concaténé :
=TEXTJOIN(", ", TRUE, UNIQUE(A2:A18))
- UNIQUE(A2:A18) extrait uniquement les valeurs uniques de la plage.
- TEXTJOIN(", ", TRUE, ...) concatène ces valeurs uniques, en les séparant par une virgule et un espace. L'argument TRUE ignore les cellules vides.
Méthode 2 : Utilisation de Kutools AI Aide
Pour une solution plus rapide et entièrement automatisée, Kutools for Excel propose un outil innovant — « Kutools AI Aide ». Décrivez simplement votre tâche, et l'IA générera instantanément les résultats souhaités sans aucune configuration manuelle. Cela élimine le besoin de formules complexes ou de configurations chronophages, fournissant des résultats précis en quelques secondes.
Après avoir installé Kutools For Excel, cliquez sur "Kutools" > "AI Aide" pour ouvrir le panneau "Kutools AI Aide".
- Sélectionnez les cellules dont vous souhaitez concaténer uniquement les valeurs uniques ;
- Tapez la demande dans la zone de chat : par exemple :
Concaténer des valeurs uniques avec une virgule depuis la plage sélectionnée et placer le résultat combiné dans la cellule C2 - Puis, appuyez sur la touche Entrée ou cliquez sur le bouton "Envoyer". Kutools AI analysera la question, puis, après avoir terminé, cliquez sur le bouton "Exécuter" pour obtenir le résultat.
Méthode 3 : Utilisation d'une fonction définie par l'utilisateur
Pour les utilisateurs avancés ayant besoin de plus de flexibilité ou souhaitant automatiser le processus, une fonction VBA personnalisée (UDF) peut être créée pour concaténer des valeurs uniques. Cette méthode est idéale pour les utilisateurs à l'aise avec le codage ou ceux qui ont besoin d'une solution réutilisable.
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 : Concaténer des valeurs uniques dans une seule cellule :
Function ConcatUniq(xRg As Range, xChar As String) As String
'updateby Extendoffice
Dim xCell As Range
Dim xDic As Object
Set xDic = CreateObject("Scripting.Dictionary")
For Each xCell In xRg
xDic(xCell.Value) = Empty
Next
ConcatUniq = Join$(xDic.Keys, xChar)
Set xDic = Nothing
End Function
3. Retournez ensuite dans votre feuille de calcul, et entrez cette formule : =ConcatUniq (A2:A18,",") dans une cellule vide où vous souhaitez afficher le résultat concaténé, puis appuyez sur la touche Entrée pour obtenir le résultat concaténé unique, voir capture d'écran :
Lister les valeurs uniques et concaténer les valeurs correspondantes
Dans Excel, lister les valeurs uniques et concaténer leurs valeurs correspondantes est une tâche courante, surtout lorsqu'il s'agit de jeux de données nécessitant un résumé ou une consolidation. Cette section fournit un guide complet pour y parvenir efficacement.
Méthode 1 : Utilisation des fonctions TEXTJOIN et UNIQUE
Les fonctions modernes d'Excel comme UNIQUE, FILTER et TEXTJOIN facilitent la liste des valeurs uniques et la concaténation de leurs valeurs correspondantes sans avoir besoin de formules complexes.
1. Utilisez la fonction UNIQUE pour lister toutes les valeurs uniques de la colonne A :
=UNIQUE(A2:A17)
2. Appliquez les fonctions TEXTJOIN et FILTER pour concaténer les valeurs correspondantes pour chaque valeur unique, faites glisser la formule vers le bas pour remplir les autres cellules, voir capture d'écran :
=TEXTJOIN(", ", TRUE, FILTER($B$2:$B$17, $A$2:$A$17 =D2))
- UNIQUE(A2:A17) extrait les valeurs distinctes de la colonne A.
- FILTER(B2:B17, A2:A17 = D2) récupère les valeurs correspondantes pour chaque valeur unique.
- TEXTJOIN(", ", TRUE, ...) concatène les valeurs filtrées avec un délimiteur (par exemple, une virgule et un espace).
Méthode 2 : Utilisation de Kutools for Excel
Si vous avez Kutools for Excel, sa puissante fonctionnalité "Fusion avancée des lignes" vous permet de lister facilement les valeurs uniques et de concaténer leurs valeurs correspondantes - rapidement et facilement, sans avoir besoin de coder ou de créer des formules complexes. Sélectionnez simplement vos données, configurez les paramètres, et laissez Kutools faire le reste, fournissant des résultats professionnels en quelques secondes.
1. Copiez et collez les données originales dans une autre cellule pour sauvegarder les données. Sélectionnez la plage de données, puis cliquez sur "Kutools" > "Fusionner et Diviser" > "Fusion avancée des lignes", voir capture d'écran :
2. Dans la boîte de dialogue "Fusion avancée des lignes", configurez les paramètres :
- Cliquez sur le nom de la colonne sur laquelle vous souhaitez combiner les doublons, puis sélectionnez "Clé principale" dans la liste déroulante de la colonne "Calcul" ;
- Ensuite, sélectionnez le nom de la colonne dont vous souhaitez combiner les valeurs, puis choisissez un délimiteur pour séparer les valeurs dans la liste déroulante de la colonne "Calcul" ;
- Enfin, cliquez sur le bouton OK.
Résultat :
Kutools automatise le processus d'extraction des valeurs uniques et de concaténation de leurs valeurs correspondantes avec le délimiteur spécifié.
Méthode 3 : Utilisation de code VBA
Bien que les fonctions intégrées d'Excel comme UNIQUE et TEXTJOIN puissent gérer cela dans une certaine mesure, elles peuvent être insuffisantes lorsqu'il s'agit de scénarios complexes ou de versions antérieures d'Excel. Que vous soyez débutant ou utilisateur avancé, ce guide vous guidera à travers les étapes pour lister les valeurs uniques et concaténer leurs valeurs correspondantes en utilisant du code VBA.
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 : Lister les valeurs uniques et concaténer les données correspondantes
Sub test()
'updateby Extendoffice
Dim xRg As Range
Dim xArr As Variant
Dim xCell As Range
Dim xTxt As String
Dim I As Long
Dim xDic As Object
Dim xOutputRg As Range
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select the data range", "Kutools for Excel", xTxt, , , , , 8)
Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
If xRg Is Nothing Then Exit Sub
If xRg.Areas.Count > 1 Then
MsgBox "Does not support multiple selections", , "Kutools for Excel"
Exit Sub
End If
If xRg.Columns.Count <> 2 Then
MsgBox "There must be only two columns in the selected range", , "Kutools for Excel"
Exit Sub
End If
Set xOutputRg = Application.InputBox("Please select the output cell", "Kutools for Excel", Type:=8)
If xOutputRg Is Nothing Then Exit Sub
xArr = xRg
Set xDic = CreateObject("Scripting.Dictionary")
xDic.CompareMode = 1
For I = 1 To UBound(xArr)
If Not xDic.Exists(xArr(I, 1)) Then
xDic.Item(xArr(I, 1)) = xDic.Count + 1
xArr(xDic.Count, 1) = xArr(I, 1)
xArr(xDic.Count, 2) = xArr(I, 2)
Else
xArr(xDic.Item(xArr(I, 1)), 2) = xArr(xDic.Item(xArr(I, 1)), 2) & "," & xArr(I, 2)
End If
Next
xOutputRg.Resize(xDic.Count, 2).Value = xArr
End Sub
3. Appuyez ensuite sur la touche F5 pour exécuter ce code, et une boîte de dialogue apparaît pour vous rappeler de sélectionner la plage de données que vous souhaitez concaténer en fonction des valeurs uniques, voir capture d'écran :
4. Cliquez sur OK, une autre boîte de dialogue apparaît pour vous rappeler de sélectionner les cellules où placer le résultat :
5. Cliquez sur OK, les valeurs uniques ont été extraites et leurs valeurs correspondantes dans une autre colonne ont été concaténées ensemble. Voir capture d'écran :
En conclusion, concaténer des valeurs uniques dans Excel peut être réalisé efficacement à travers plusieurs méthodes adaptées à différents niveaux d'expertise et besoins. En choisissant la méthode qui correspond le mieux à vos exigences, vous pouvez rationaliser le traitement des données et améliorer l'efficacité de la gestion des valeurs uniques dans Excel. Si vous êtes intéressé par l'exploration de plus d'astuces et 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 !