Note: The other languages of the website are Google-translated. Back to English

Hoe cellen samen te voegen als dezelfde waarde in een andere kolom in Excel bestaat?

combineer als hetzelfde

Zoals de linkerschermafbeelding laat zien, moet je supps de cellen in de tweede kolom samenvoegen op basis van dezelfde waardecellen in de eerste kolom. Hoe kun je het bereiken?

In dit artikel zullen we drie methoden introduceren om u te helpen dit te bereiken.

Voeg cellen samen als dezelfde waarde met formules en filter

Voeg cellen samen als dezelfde waarde met VBA-code
Voeg cellen eenvoudig samen met dezelfde waarde met Kutools voor Excel


Voeg cellen samen als dezelfde waarde met formules en filter

Met de onderstaande formules kunt u de bijbehorende celinhoud samenvoegen als een andere kolom dezelfde waarde bevat in Excel.

1. Selecteer een lege cel naast de tweede kolom (hier selecteren we cel C2), voer de formule in = ALS (A2 <> A1, B2, C1 & "," & B2) in de formulebalk en druk vervolgens op Enter sleutel.

2. Selecteer vervolgens cel C2 en sleep de vulhendel naar de cellen die u wilt samenvoegen.

3. Voer de formule in = ALS (A2 <> A3, SAMENHANG (A2, "," "", C2, "" ""), "") in cel D2 en sleep de vulhendel naar de overige cellen.

4. Selecteer cel D1 en klik op Data > Filteren. Zie screenshot:

5. Klik op de vervolgkeuzepijl in cel D1, schakel het selectievakje uit (Spaties) vak en klik vervolgens op het OK knop.

U kunt zien dat de cellen aaneengeschakeld zijn als de eerste kolomwaarden hetzelfde zijn.

Opmerking:: Om de bovenstaande formules met succes te gebruiken, moeten dezelfde waarden in kolom A continu zijn.


Combineer eenvoudig cellen in een kolom als dezelfde waarde in een andere kolom bestaat:

met Kutools for Excel's Geavanceerd Combineer rijen hulpprogramma, kunt u eenvoudig cellen in een kolom combineren als dezelfde waarde in een andere kolom in Excel voorkomt, zoals de onderstaande demo laat zien. Download nu Kutools voor Excel! (

-dag vrij parcours)

contatinate van hetzelfde


Voeg cellen samen als dezelfde waarde met VBA-code

Naast de formule laten we u in deze sectie zien hoe u VBA-code kunt gebruiken om cellen samen te voegen als ze dezelfde waarde hebben.

1. druk op anders + F11 toetsen om de te openen Microsoft Visual Basic-toepassingen venster.

2. In de Microsoft Visual Basic-toepassingen venster klikt Invoegen > Module. Kopieer en plak vervolgens onderstaande code in het Module venster.

VBA-code: voeg cellen samen als dezelfde waarden

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

Opmerkingen:

1. D1 in de lijn Stel xRg = Bereik ("D1") in betekent dat het resultaat in cel D1 wordt geplaatst.

2. Nee en Gecombineerde kleur in de lijn xRes (1, 1) = "Nee" en xRes (1, 2) = "Gecombineerde kleur" zijn de kopteksten van aaneengeschakelde kolommen. U kunt ze naar behoefte wijzigen.

3. druk de F5 sleutel om de code uit te voeren, dan krijgt u de aaneengeschakelde resultaten binnen het opgegeven bereik.


Voeg cellen eenvoudig samen als dezelfde waarde met Kutools voor Excel (meerdere klikken)

Als de bovenstaande twee methoden ingewikkeld voor u zijn, laten we u hier de Geavanceerd Combineer rijen nut van Kutools for Excel U kunt cellen gemakkelijk samenvoegen met een komma, puntkomma enzovoort als dezelfde waarden in een andere kolom voorkomen.

Voor het aanvragen Kutools for Excel, Dan kunt u download en installeer het eerst.

1. Selecteer het bereik met cellen die u wilt samenvoegen, en klik vervolgens op Kutools > Samenvoegen en splitsen > Geavanceerd Combineer rijen. Zie screenshot:

2. In de Geavanceerd Combineer rijen dialoogvenster, moet u het volgende doen.

  • 2.1) Selecteer de kolom met dezelfde waarde waarop u cellen wilt samenvoegen op basis van, en klik vervolgens op Hoofdsleutel knop.
  • 2.2) Selecteer de kolom waarin u de cellen wilt samenvoegen, klik op Combineren knop, en specificeer vervolgens een scheidingsteken uit het contextmenu (hier specificeer ik komma).
  • 2.3) Klik op de OK knop.

Nu worden de cellen aaneengeschakeld volgens de primaire sleutelkolom.

  Als u een gratis proefperiode wilt (

30
-dag) van dit hulpprogramma, klik om het te downloaden, en ga vervolgens de bewerking toepassen volgens de bovenstaande stappen.

Voeg cellen eenvoudig samen met dezelfde waarde met Kutools voor Excel


De beste tools voor kantoorproductiviteit

Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%

  • visfuik: Snel invoegen complexe formules, grafieken en alles wat je eerder hebt gebruikt; Versleutel cellen met wachtwoord; Maak een mailinglijst en stuur e-mails ...
  • Super Formula-balk (bewerk eenvoudig meerdere regels tekst en formule); Lay-out lezen (gemakkelijk grote aantallen cellen lezen en bewerken); Plakken in gefilterd bereik...
  • Voeg cellen / rijen / kolommen samen zonder gegevens te verliezen; Gespleten cellen inhoud; Combineer dubbele rijen / kolommen... Voorkom dubbele cellen; Vergelijk Ranges...
  • Selecteer Dupliceren of Uniek Rijen; Selecteer lege rijen (alle cellen zijn leeg); Super zoeken en fuzzy zoeken in veel werkboeken; Willekeurige selectie ...
  • Exacte kopie Meerdere cellen zonder de formuleverwijzing te wijzigen; Maak automatisch verwijzingen naar meerdere bladen; Plaats kogels, Selectievakjes en meer ...
  • Extraheer tekst, Tekst toevoegen, Verwijderen op positie, Ruimte verwijderen; Paging-subtotalen maken en afdrukken; Converteren tussen celinhoud en opmerkingen...
  • Super filter (bewaar en pas filterschema's toe op andere bladen); Geavanceerd sorteren per maand / week / dag, frequentie en meer; Speciaal filter door vet, cursief ...
  • Combineer werkmappen en werkbladen; Tabellen samenvoegen op basis van sleutelkolommen; Gegevens splitsen in meerdere bladen; Batch Converteer xls, xlsx en PDF...
  • Meer dan 300 krachtige functies. Ondersteunt Office / Excel 2007-2021 en 365. Ondersteunt alle talen. Eenvoudig te implementeren in uw onderneming of organisatie. Volledige functies Gratis proefperiode van 30 dagen. 60 dagen geld-terug-garantie.
kte tabblad 201905

Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
officetab onderkant
Comments (17)
Nog geen beoordelingen. Beoordeel als eerste!
Deze opmerking is gemaakt door de moderator op de site
Kan niet lijken samen te voegen met meer dan 2 cellen met behulp van formules en filters
Deze opmerking is gemaakt door de moderator op de site
Hoe kan ik kolommen met dezelfde namen samenvoegen, bijv. Kolom één leest Kenia door en kolom 2 leest western, Nyanza (komt meer dan tien keer voor) en kolom 3 drie namen van districten. Ik wil weten hoeveel mang-districten we in elke provincie hebben, maar de kolommen behouden.
Deze opmerking is gemaakt door de moderator op de site
Beste Geoffrey,

Probeer het hulpprogramma Advanced Combine Rows dat we in methode twee hierboven noemden. Als u de kolommen wilt behouden, maak dan een kopie van het oorspronkelijke bereik en doe alles in het gekopieerde bereik.

Geef de kolom provincie op als primaire sleutel, stel Kolom 1 in als Eerste behouden en stel vervolgens de kolom district in op Berekenen > Tellen.

Daarna krijg je hoeveel district je in elke provincie hebt.
Deze opmerking is gemaakt door de moderator op de site
De samenvoegfunctie werkt niet. Combineert alle rijen in één cel, ondanks verschillende sleutels.
Deze opmerking is gemaakt door de moderator op de site
Beste Mariska,
Sorry, ik weet niet zeker of ik je vraag heb. Er zijn drie methoden in het artikel, welke aaneenschakelingsfunctie bedoel je?
Deze opmerking is gemaakt door de moderator op de site
Ik ben je zo dankbaar voor deze formules. Fantastisch werk!
Deze opmerking is gemaakt door de moderator op de site
Dit is precies wat ik nodig had... bedankt
Deze opmerking is gemaakt door de moderator op de site
Met behulp van de VBA-macro en het verkrijgen van geweldige resultaten, heb ik geprobeerd het enigszins aan te passen aan mijn behoeften, maar ik kan het niet laten werken, dus ik hoop dat je kunt helpen.

Welk bit moet ik veranderen om het een specifieke kolom te laten concateren, niet die direct rechts van de xSrc = Range?

Bedankt voor je geweldige werk!
Deze opmerking is gemaakt door de moderator op de site
Of als een betere optie, als u 3 kolommen had in plaats van 2 en duplicaten vond in kolom A (zoals uw voorbeeld), kunt u kolom B in een cel en kolom C in een afzonderlijke cel samenvoegen? Dus als je kolommen met Getal, Kleur, Leeftijd had, zou je dan kleur en leeftijd in verschillende kolommen kunnen samenvoegen als je duplicaten in Getal vindt? Hoop dat het zin heeft!
Deze opmerking is gemaakt door de moderator op de site
Ik gebruik deze VBA voor veel van mijn spreadsheets en het is geweldig. Maar de spreadsheets zijn erg grote 50k+ rijen geworden en het lijkt niet meer te werken. Als ik het op 1000 rijen gebruik, werkt het prima, maar grote gegevenssets lijken het niet aan te kunnen. Geen fouten alleen geen resultaten. Alle hulp zou op prijs worden gesteld.
Deze opmerking is gemaakt door de moderator op de site
Hi James,
Ik heb de code getest zoals je zei, maar het werkt nog steeds goed in mijn geval, zelfs als ik de rijen op 1000+ zet.
Deze opmerking is gemaakt door de moderator op de site
Hoi,

het lijkt erop dat 2 van je formules niet kloppen:

=ALS(A2<>A3,CONCATENATE(A2,",""",C2,""""),""). U moet "A2" wijzigen in "D1". Omdat je de string aan de vorige cel wilt toevoegen.

hetzelfde geldt voor deze formule:

=ALS(A2<>A1,B2,C1 & "," & B2) : Verander C1 in D1.


vriendelijke groeten


Harry
Deze opmerking is gemaakt door de moderator op de site
Hallo, allereerst bedankt voor het maken van deze bron. Ik ben al een paar uur bezig om dit uit te zoeken en ik loop vast. Ik gebruik je 'cellen samenvoegen als dezelfde waarde' maar mijn script kijkt naar kolom "D" in plaats van "A. Ik kan er niet achter komen hoe ik ervoor kan zorgen dat het een andere kolom voor de gegevens gebruikt dan de kolom ernaast In mijn gevallen wil ik dat het naar kolom "D" kijkt om te zien of de waarde hetzelfde is en zo ja, dan zal het de gegevens uit kolom "H" halen en die gegevens uit kolom "H" in een cel plaatsen in kolom "J". Hoe schakel ik dit om om kolom "H" voor de gegevens te gebruiken? Bedankt


Sub ConcatenateCellsIfSameValues()
Dim xCol als nieuwe collectie
Dim xSrc als variant
Dim xRes() als variant
Dim ik zo lang
Dim J zo lang
Dim xRg als bereik
xSrc = Range("D1", Cells(Rows.Count, "D").End(xlUp)).Resize(, 2)
Stel xRg = bereik ("J1") in
On Error Resume Next
Voor I = 2 Naar UBound(xSrc)
xCol.Toevoegen xSrc(I, 1), TypeName(xSrc(I, 1)) & CStr(xSrc(I, 1))
Volgende ik
On Error GoTo 0
ReDim xRes (1 tot xKol. Count + 1, 1 tot 2)
xRes(1, 1) = "Nee"
xRes(1, 2) = "Producten"
Voor I = 1 Tot xKol.Aantal
xRes(I + 1, 1) = xKol(I)
Voor J = 2 Naar UBound(xSrc)
Als xSrc(J, 1) = xRes(I + 1, 1) Dan
xRes(I + 1, 2) = xRes(I + 1, 2) & vbCrLf & xSrc(J, 2)
End If
Volgende J
xRes(I + 1, 2) = Midden(xRes(I + 1, 2), 2)
Volgende ik
Stel xRg = xRg.Resize(UBound(xRes, 1), UBound(xRes, 2))
xRg.NumberFormat = "@"
xRg = xRes
xRg.Gehele Kolom.AutoFit
End Sub
Deze opmerking is gemaakt door de moderator op de site
"Ik kan er niet achter komen hoe ik een andere kolom voor de gegevens kan gebruiken dan de kolom ernaast. In mijn gevallen wil ik dat het naar kolom 'D' kijkt om te zien of de waarde hetzelfde is en of dus het zal de gegevens uit kolom 'H' pakken en die gegevens uit kolom 'H' in een cel in kolom 'J' plaatsen."

Ben je hier ooit achter gekomen?
Deze opmerking is gemaakt door de moderator op de site
Ik wilde je alleen bedanken. Het was niet precies wat ik wilde, maar man deed het me helpen erachter te komen wat ik moest doen.

Ik heb een tabel met de naam van de persoon in kolom A, datums in kolom B en de namen van tools die ze gebruiken in de koppen van kolommen C:G . In elke kolom staat een "Y" als ze die tool op die datum hebben gebruikt en blanco als ze dat niet hebben gedaan. (Ter info: dezelfde persoon kan meer dan eens worden vermeld en kan dezelfde tool meer dan eens hebben gebruikt) Op een aparte (samenvattende) pagina wilde ik alle tools vermelden die elke persoon binnen een datumperiode heeft gebruikt, alleen elke tool die ze hebben gebruikt een keer, in dezelfde cel. Op deze pagina stond de naam van de persoon in kolom A, Typen gereedschappen die werden gebruikt in kolom B en de helperkolommen in kolom G:K. Dit is wat ik heb:
De eerste helperkolom (G2):
=IF(COUNTIFS(Table7[Person's Name],A2,Table7[Screw Driver],"Y",Table7[Date],">="&1/1/20,Table7[Date],"<="&3/31/20),"Screw Driver","")
In de laatste helperkolom (K2):
=IF(COUNTIFS(Table7[Person's Name],A2,Table7[Hammer],"Y",Table7[Date],">="&1/1/20,Table7[Date],"<="&3/31/20),IF(J2="","Hammer",J2&"/"&"Hammer"),J2)

In B2 heb ik zojuist =K2 . ingevoerd

Nogmaals bedankt en ik hoop dat dit iemand helpt. EZPD
Deze opmerking is gemaakt door de moderator op de site
Hallo, hoe zou de VBA-code worden aangepast als ik cellen in kolom M wil combineren op basis van de duplicaten in kolom A?
Deze opmerking is gemaakt door de moderator op de site
Hallo Kristin, probeer de onderstaande VBA om cellen in kolom M te combineren op basis van de duplicaten in kolom A. In de code,  O1 is de eerste cel die de resultaten uitvoert; M is de kolom die u gaat combineren op basis van de duplicaten in kolom A; A1 en A vertegenwoordigen de eerste cel en de kolom waar de duplicaten zich bevinden; Nee en Combineer kleur is de kop van de kolommen na het aaneenschakelen. U kunt deze variabelen naar behoefte wijzigen. Sub ConcatenateCellsIfSameValues()
'Bijgewerkt door' Extendoffice 20211105
Dim xCol als nieuwe collectie
Dim xSrc als variant
Dim xSrcValue als variant
Dim xRes() als variant
Dim ik zo lang
Dim J zo lang
Dim xRg als bereik
Dim xResultAddress als tekenreeks
Dim xMergeAddress als tekenreeks
Dim xUp als geheel getal

xResultAddress = "O1" 'De cel om de resultaten uit te voeren'
xMergeAddress = "M" 'De kolom die u gaat combineren op basis van de duplicaten in kolom A

xSrc = Bereik("A1", Cellen (Rijen. Telling,"A").End(xlUp)).Resize(, 1)
xUp = Bereik("A1", Cellen (Rijen. Telling,"A").End(xlUp)).Rijen.Aantal
xSrcValue = Bereik (xMergeAddress & "1:" & xMergeAddress & xUp)

Stel xRg = Bereik (xResultAdres) in
On Error Resume Next
Voor I = 2 Naar UBound(xSrc)
xCol.Toevoegen xSrc(I, 1), TypeName(xSrc(I, 1)) & CStr(xSrc(I, 1))
Volgende ik

On Error GoTo 0
ReDim xRes (1 tot xKol. Count + 1, 1 tot 2)
xRes(1, 1) = "Nee"
xRes(1, 2) = "Gecombineerde kleur"
Voor I = 1 Tot xKol.Aantal
xRes(I + 1, 1) = xKol(I)
Voor J = 2 Naar UBound(xSrc)
Als xSrc(J, 1) = xRes(I + 1, 1) Dan
xRes(I + 1, 2) = xRes(I + 1, 2) & ", " & xSrcValue(J, 1)
End If
Volgende J
xRes(I + 1, 2) = Midden(xRes(I + 1, 2), 2)
Volgende ik
Stel xRg = xRg.Resize(UBound(xRes, 1), UBound(xRes, 2))
xRg.NumberFormat = "@"
xRg = xRes
xRg.Gehele Kolom.AutoFit
End Sub
Er zijn nog geen reacties geplaatst
Laat uw commentaar
Posten als gast
×
Beoordeel dit bericht:
0   Personages
Voorgestelde locaties

Volg ons

Copyright © 2009 - www.extendoffice.com. | Alle rechten voorbehouden. Aangedreven door ExtendOffice. | Sitemap
Microsoft en het Office-logo zijn handelsmerken of gedeponeerde handelsmerken van Microsoft Corporation in de Verenigde Staten en / of andere landen.
Beschermd door Sectigo SSL