Как да съединя текстове в колона без дубликати в Excel?
Знаете ли как да съедините текстове от колона в клетка без дубликати в Excel? И какво, ако съедините текстове в колона без дубликати въз основа на конкретна стойност на клетка? Тази статия предлага методи за решаване на проблемите.
Обединете текстове в колона без дубликати с формула
Обединете текстове в колона без дубликати въз основа на друга стойност на клетка с VBA код
Лесно съединявайте текстове в колона въз основа на друга стойност на клетка с невероятен инструмент
Още урок за комбиниране на клетки...
Обединете текстове в колона без дубликати с формула
Както е показано на екранната снимка по-долу, искате да обедините текстове в колона A в една клетка без дубликати. Моля, направете следното.
1. Изберете празна клетка, копирайте формулата по-долу в нея и натиснете Друг + Превключване + Въведете клавиши едновременно.
=TEXTJOIN(", ", TRUE, IF(MATCH(A2:A12, A2:A12, 0)=MATCH(ROW(A2:A12), ROW(A2:A12)), A2:A12, ""))
Забележка: Във формулата „, ” е разделителят на комбинираните текстове; A2:A12 са клетките на колоната, които ще съедините. Моля, сменете ги според нуждите си.
Сега текстовете в посочената колона са обединени без дубликати.
Обединете текстове в колона без дубликати въз основа на друга стойност на клетка с VBA код
Понякога може да се нуждаете от обединени текстове в колона без дубликати въз основа на стойност в друга клетка, както е показано на екранната снимка по-долу, можете да го получите по следния начин.
1. В работния лист съдържа текстовете, които ще съедините, натиснете Друг + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. В Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модул, и след това копирайте кода на VBA по-долу в прозореца с код на модула.
VBA код: Обединете текстове в колона без дубликати въз основа на друга стойност на клетка
Sub JoinTextsWithoutDuplicates()
'Updated by Extendoffice 20190924
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 xValue
Dim xStr, xStrValue As String
Dim xB As Boolean
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
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
xStrValue = xArr(I, 2)
xB = True
For Each xStr In Split(xArr(xDic.Item(xArr(I, 1)), 2), ",")
If xStr = xStrValue Then
xB = False
Exit For
End If
Next
If xB Then
xArr(xDic.Item(xArr(I, 1)), 2) = xArr(xDic.Item(xArr(I, 1)), 2) & "," & xArr(I, 2)
End If
End If
Next
Sheets.Add.Cells(1).Resize(xDic.Count, 2).Value = xArr
End Sub
3. Натисни F5 ключ за изпълнение на кода. В изскачащите Kutools за Excel изберете диапазона, включващ както стойностите, въз основа на които ще съедините текстове, така и текстовете, които ще съедините, и след това щракнете върху OK бутон.
След това уникалните стойности се извличат и съответните им уникални текстове в друга колона се обединяват и поставят в нов работен лист.
Лесно съединявайте текстове в колона въз основа на друга стойност на клетка с невероятен инструмент
Преди да кандидатствате Kutools за Excel, Моля те първо го изтеглете и инсталирайте.
Забележка: Тъй като помощната програма ще се прилага директно в оригиналния диапазон, моля, направете копие на оригиналните данни, преди да приложите операцията по-долу.
1. Изберете диапазона (включете текстовете, които ще съедините, и стойността, въз основа на която ще съедините текстовете), щракнете Kutools > съдържание > Разширено комбиниране на редове. Вижте екранна снимка:
2. В Разширено комбиниране на редове диалогов прозорец, моля, направете следното:
- Изберете колоната, съдържаща стойностите, въз основа на които ще съедините текстове, и щракнете Първичен ключ;
- Изберете колоната, съдържаща текстовете, които ще съедините в клетка, и щракнете Комбинирам > Запетая;
- Ако има останали колони, моля, посочете условия за тях. В този случай избирам колоната Продажби и избирам Изчисли > Сума.
- Щракнете върху OK бутон. Вижте екранна снимка:
След това можете да видите, че всички текстове в посочената колона са обединени въз основа на ключовата колона. Вижте екранна снимка:
Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.
Свързани статии
Комбинирайте дублиращи се редове и сумирайте стойностите в Excel
В Excel винаги може да срещнете този проблем, когато имате набор от данни, който съдържа някои дублиращи се записи, и сега искате да комбинирате дублиращите се данни и да сумирате съответните стойности в друга колона, как можете да разрешите този проблем? Опитайте методите в тази статия.
Комбинирайте няколко клетки в клетка с интервал, запетаи или други разделители в Excel
Когато комбинирате клетките от множество колони или редове в една клетка, комбинираните данни може да не бъдат разделени от нищо. Но ако искате да ги разделите с определени знаци, като интервал, запетаи, точка и запетая или други, как можете да го направите? Този урок ще ви представи някои методи.
Свържете клетки, като запазите форматирането на число/дата в Excel
Може би сте забелязали, че когато прилагаме функцията CONCATENATE в Excel, форматът за дата (2014-01-03) и числовият формат като валутен формат ($734.7), процентен формат (48.9%), десетични знаци (24.5000) и т.н. се премахват и се показват като общи числа в резултатите от конкатенацията. В тази статия измисляме няколко заобиколни решения за свързване на данни със запазване на форматиране на дата или число в Excel.
Обърнете функцията за свързване в Excel
Както всички знаем, функцията Concatenate в Excel може да ни помогне да комбинираме множество клетки в една клетка, но понякога искате да направите обратното на функцията Concatenate, това означава да не комбинирате клетки, а да разделите стойността на клетката на множество отделни клетки. Методите в тази статия ще помогнат за решаването на проблема.
Свързване на клетки, ако същата стойност съществува в друга колона в Excel
Тази статия предоставя методи, които да ви помогнат лесно да свързвате клетки, ако същата стойност съществува в друга колона в Excel.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!