Gå til hovedindhold

Hvordan sammenligner man kommaseparerede værdier i to celler og returnerer duplikerede eller unikke værdier i Excel?

Som vist på skærmbilledet nedenfor, er der to kolonner - Kolonne1 og Kolonne2, hver celle i kolonnen indeholder kommaseparerede tal. Hvad kan du gøre for at sammenligne de kommaseparerede tal i Kolonne1 med celleindholdet i den samme række af Kolonne2 og returnere alle duplikerede eller unikke værdier?

Denne vejledning giver dig to metoder til at hjælpe dig med at udføre denne opgave.


Sammenlign kommaseparerede værdier i to celler og returner duplikerede eller unikke værdier med formler

Dette afsnit indeholder to formler, der hjælper med at sammenligne de kommaseparerede værdier i to celler og returnere de duplikerede eller unikke værdier mellem dem.

Bemærk: Følgende formler virker kun i Excel til 365. Hvis du bruger andre versioner af Excel, prøv at bruge nedenstående VBA-metode.

Tag ovenstående to kolonner som et eksempel. For at sammenligne de kommaseparerede tal i Kolonne1 med de kommaseparerede tal i den samme række af Kolonne2 og returnere duplikerede eller unikke værdier, skal du gøre følgende.

Returner duplikerede værdier

1. Vælg en celle for at udskrive dublettallene mellem de to specificerede celler med kommaseparerede tal. I dette tilfælde vælger jeg celle D2, indtast derefter formlen nedenfor og trykker på Indtast nøgle. Vælg formelcellen og træk den Håndtag til automatisk udfyldning ned for at få dobbelttallene mellem celler i de andre rækker.

=LET(x, TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),y,UNIQUE(x),z,UNIQUE(x,,1), TEXTJOIN(", ",TRUE,IF(ISERROR(MATCH(y,z,0)),y, "")))

Returner unikke værdier

For at returnere de unikke tal mellem de to specificerede celler med kommaseparerede tal i samme række, kan følgende formel hjælpe.

1. Vælg en celle for at udskrive de unikke tal, i dette tilfælde vælger jeg celle E2, indtast derefter formlen nedenfor og trykker på Indtast nøgle. Vælg formelcellen og træk den Håndtag til automatisk udfyldning ned for at få de unikke tal mellem cellerne i de andre rækker.

=TEXTJOIN(", ",TRUE,UNIQUE(TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ",TRUE,A2:B2), ", ")),,1))

Noter:

1) Ovenstående to formler kan kun anvendes i Excel til 365. Hvis du bruger en anden version af Excel end Excel til 365, prøv venligst følgende VBA-metode.
2) Cellerne, der skal sammenlignes, skal støde op til hinanden i samme række eller kolonne.

Sammenlign to kolonner med kommaseparerede værdier og returner duplikerede eller unikke værdier med VBA

Den brugerdefinerede funktion i dette afsnit hjælper med at sammenligne de kommaseparerede værdier i to specificerede celler og returnere de duplikerede værdier eller unikke værdier mellem dem. Gør venligst som følger.

Tag det samme eksempel som ovenfor, for at sammenligne de kommaseparerede tal i Kolonne1 med de kommaseparerede tal i den samme række af Kolonne2 og returnere duplikerede eller unikke værdier, prøv venligst den brugerdefinerede funktion i dette afsnit.

1. I åbningsprojektmappen skal du trykke på andre + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.

2. i Microsoft Visual Basic til applikationer vindue, skal du klikke på indsatte > Moduler, og kopier følgende VBA-kode i Modul (kode) vindue.

VBA-kode: Sammenlign kommaseparerede værdier i to celler og returner duplikerede/unikke værdier

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. Efter at have indsat koden i Modul (kode) vindue, gå til klik Værktøjer > Referencer at åbne Referencer - VBAProject vindue, skal du kontrollere Microsoft Scripting Runtime boks og klik derefter på OK .

4. Tryk på andre + Q taster for at lukke Microsoft Visual Basic til applikationer vindue.

5. Nu skal du anvende to funktioner separat for at returnere de duplikerede og unikke værdier fra to kommaseparerede værdiceller.

Returner dubletværdi

Vælg en celle for at udskrive dublettallene, i dette eksempel vælger jeg celle D2, indtast derefter formlen nedenfor og trykker på Indtast tasten for at få de duplikerede tal mellem celle A2 og B2.

Vælg formelcellen, og træk dens AutoFyld-håndtag ned for at få dublettallene mellem cellerne i de andre rækker.

=COMPARE(A2,B2,TRUE)

Returner unikke værdier

Vælg en celle for at udskrive de unikke tal, i dette eksempel vælger jeg celle E2, indtaster derefter formlen nedenfor og trykker på Indtast tasten for at få de unikke tal mellem celle A2 og B2.

Vælg formelcellen, og træk dens AutoFyld-håndtag ned for at få de unikke tal mellem cellerne i de andre rækker.

=COMPARE(A2,B2,FALSE)

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations