Hoe komma-gescheiden waarden in twee cellen te vergelijken en dubbele of unieke waarden in Excel terug te geven?
Zoals te zien is in de onderstaande schermafbeelding, zijn er twee kolommen - Kolom1 en Kolom2, waarbij elke cel in de kolom komma-gescheiden nummers bevat. Om de komma-gescheiden nummers in Kolom1 te vergelijken met de celinhoud in dezelfde rij van Kolom2 en alle dubbele of unieke waarden terug te geven, wat zou je kunnen doen?
Deze handleiding biedt twee methoden om u bij deze taak te helpen.
Vergelijk komma-gescheiden waarden in twee cellen en retourneer dubbele of unieke waarden met formules
In deze sectie worden twee formules aangeboden om de komma-gescheiden waarden in twee cellen te vergelijken en de dubbele of unieke waarden ertussen terug te geven.
Opmerking: De volgende formules werken alleen in Excel voor 365. Als u andere versies van Excel gebruikt, probeer dan de onderstaande VBA-methode.
Neem de bovenstaande twee kolommen als voorbeeld om de komma-gescheiden nummers in Kolom1 te vergelijken met de komma-gescheiden nummers in dezelfde rij van Kolom2 en retourneer dubbele of unieke waarden, doe het volgende.
Dubbele waarden retourneren
1. Selecteer een cel om de dubbele nummers tussen de twee gespecificeerde cellen met komma-gescheiden nummers uit te voeren, in dit geval selecteer ik cel D2, voer vervolgens de onderstaande formule in en druk op de Enter-toets. Selecteer de formulecel en sleep de AutoVul-handgreep naar beneden om de dubbele nummers tussen cellen in de andere rijen te krijgen.
=LET(x, TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),y,UNIQUE(x),z,UNIQUE(x,,1), TEXTJOIN(", ",TRUE,IF(ISERROR(MATCH(y,z,0)),y, "")))
Unieke waarden retourneren
Om de unieke nummers tussen de twee gespecificeerde cellen met komma-gescheiden nummers in dezelfde rij te retourneren, kan de volgende formule helpen.
1. Selecteer een cel om de unieke nummers uit te voeren, in dit geval selecteer ik cel E2, voer vervolgens de onderstaande formule in en druk op de Enter-toets. Selecteer de formulecel en sleep de AutoVul-handgreep naar beneden om de unieke nummers tussen cellen in de andere rijen te krijgen.
=TEXTJOIN(", ",TRUE,UNIQUE(TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),,1))
Opmerkingen:

Ontdek de Magie van Excel met Kutools AI
- Slimme Uitvoering: Voer celbewerkingen uit, analyseer gegevens en maak diagrammen – allemaal aangestuurd door eenvoudige commando's.
- Aangepaste Formules: Genereer op maat gemaakte formules om uw workflows te versnellen.
- VBA-codering: Schrijf en implementeer VBA-code moeiteloos.
- Formule-uitleg: Begrijp complexe formules gemakkelijk.
- Tekstvertaling: Overbrug taalbarrières binnen uw spreadsheets.
Vergelijk twee kolommen met komma-gescheiden waarden en retourneer dubbele of unieke waarden met VBA
De door de gebruiker gedefinieerde functie die in deze sectie wordt aangeboden, helpt bij het vergelijken van de komma-gescheiden waarden in twee gespecificeerde cellen en retourneert de dubbele waarden of unieke waarden ertussen. Doe het volgende.
Neem hetzelfde voorbeeld als hierboven, om de komma-gescheiden nummers in Kolom1 te vergelijken met de komma-gescheiden nummers in dezelfde rij van Kolom2 en retourneer dubbele of unieke waarden, probeer dan de door de gebruiker gedefinieerde functie in deze sectie.
1. Druk in het geopende werkboek op de toetsen Alt + F11 om het Microsoft Visual Basic for Applications-venster te openen.
2. Klik in het Microsoft Visual Basic for Applications-venster op Invoegen > Module, en kopieer de volgende VBA-code in het Module (Code)-venster.
VBA-code: Vergelijk komma-gescheiden waarden in twee cellen en retourneer dubbele/unieke waarden
Private Function COMPARE(Rng1, Rng2 As Range, Op As Boolean)
'Updated by Extendoffice 20221019
Dim R1Arr As Variant
Dim R2Arr As Variant
Dim Ans1 As String
Dim Ans2 As String
Dim Separator As String
Dim d1 As New Dictionary
Dim d2 As New Dictionary
Dim d3 As New Dictionary
Application.Volatile
Separator = ", "
R1Arr = Split(Rng1.Value, Separator)
R2Arr = Split(Rng2.Value, Separator)
Ans1 = ""
Ans2 = ""
For Each ch In R2Arr
If Not d2.Exists(ch) Then
d2.Add ch, "1"
End If
Next
If Op Then
For Each ch In R1Arr
If d2.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans1 = Ans1 & ch & Separator
End If
End If
Next
If Ans1 <> "" Then
Ans1 = Mid(Ans1, 1, Len(Ans1) - Len(Separator))
End If
COMPARE = Ans1
Else
For Each ch In R1Arr
If Not d1.Exists(ch) Then
d1.Add ch, "1"
End If
Next
For Each ch In R1Arr
If Not d2.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans2 = Ans2 & ch & Separator
End If
End If
Next
For Each ch In R2Arr
If Not d1.Exists(ch) Then
If Not d3.Exists(ch) Then
d3.Add ch, "1"
Ans2 = Ans2 & ch & Separator
End If
End If
Next
If Ans2 <> "" Then
Ans2 = Mid(Ans2, 1, Len(Ans2) - Len(Separator))
End If
COMPARE = Ans2
End If
End Function
3. Nadat u de code in het Module (Code)-venster hebt geplakt, gaat u naar Extra > Referenties om het Referenties – VBAProject-venster te openen, vink het vakje Microsoft Scripting Runtime aan en klik vervolgens op de OK-knop.
4. Druk op de toetsen Alt + Q om het Microsoft Visual Basic for Applications-venster te sluiten.
5. Nu moet u twee functies afzonderlijk toepassen om de dubbele en unieke waarden uit twee cellen met komma-gescheiden waarden terug te geven.
Dubbele waarde retourneren
Selecteer een cel om de dubbele nummers uit te voeren, in dit voorbeeld selecteer ik cel D2, voer vervolgens de onderstaande formule in en druk op de Enter-toets om de dubbele nummers tussen cel A2 en B2 te krijgen.
Selecteer de formulecel en sleep de AutoVul-handgreep naar beneden om de dubbele nummers tussen cellen in de andere rijen te krijgen.
=COMPARE(A2,B2,TRUE)
Unieke waarden retourneren
Selecteer een cel om de unieke nummers uit te voeren, in dit voorbeeld selecteer ik cel E2, voer vervolgens de onderstaande formule in en druk op de Enter-toets om de unieke nummers tussen cel A2 en B2 te krijgen.
Selecteer de formulecel en sleep de AutoVul-handgreep naar beneden om de unieke nummers tussen cellen in de andere rijen te krijgen.
=COMPARE(A2,B2,FALSE)
Beste Office-productiviteitstools
Versterk je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die je het meest nodig hebt...
Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
- Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!