Բաց թողնել հիմնական բովանդակությունը

Ինչպե՞ս համեմատել ստորակետերով առանձնացված արժեքները երկու բջիջներում և վերադարձնել կրկնօրինակ կամ եզակի արժեքներ Excel-ում:

Ինչպես ցույց է տրված ստորև ներկայացված սքրինշոթում, կան երկու սյունակներ՝ Սյունակ 1 և Սյունակ 2, սյունակի յուրաքանչյուր բջիջ պարունակում է ստորակետերով առանձնացված թվեր: Սյունակ 1-ում ստորակետերով առանձնացված թվերը համեմատելու համար 2-րդ սյունակի նույն տողում գտնվող բջիջների բովանդակության հետ և վերադարձնելու բոլոր կրկնօրինակ կամ եզակի արժեքները, ի՞նչ կարող եք անել:

Այս ձեռնարկը տրամադրում է երկու մեթոդ, որոնք կօգնեն ձեզ կատարել այս խնդիրը:


Համեմատեք ստորակետերով առանձնացված արժեքները երկու բջիջներում և վերադարձրեք կրկնօրինակ կամ եզակի արժեքներ բանաձևերով

Այս բաժինը տրամադրում է երկու բանաձև՝ օգնելու համեմատել ստորակետերով առանձնացված արժեքները երկու բջիջներում և վերադարձնել կրկնօրինակ կամ եզակի արժեքները նրանց միջև:

ՆշումՀետևյալ բանաձևերը գործում են միայն Excel 365-ի համար. Եթե ​​օգտագործում եք Excel-ի այլ տարբերակներ, փորձեք օգտագործել ստորև ներկայացված VBA մեթոդը.

Վերցրեք վերը նշված երկու սյունակները որպես օրինակ, սյունակ 1-ում ստորակետերով առանձնացված թվերը համեմատելու համար սյունակ 2-ի նույն շարքում ստորակետերով առանձնացված թվերի հետ և վերադարձրեք կրկնօրինակ կամ եզակի արժեքներ, խնդրում ենք անել հետևյալը:

Վերադարձրեք կրկնօրինակ արժեքները

1. Ընտրեք բջիջ՝ նշված երկու բջիջների միջև ստորակետերով առանձնացված թվերով կրկնօրինակ թվերը դուրս բերելու համար, այս դեպքում ես ընտրում եմ D2 բջիջը, այնուհետև մուտքագրում եմ ստորև բերված բանաձևը և սեղմում Մտնել բանալի. Ընտրեք բանաձևի բջիջը և քաշեք այն Ավտոմատ լրացման բռնակ ներքեւ՝ մյուս տողերի բջիջների միջև կրկնվող թվերը ստանալու համար:

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

Վերադարձեք եզակի արժեքներ

Նույն տողում ստորակետերով բաժանված երկու բջիջների միջև եզակի թվերը վերադարձնելու համար կարող է օգնել հետևյալ բանաձևը.

1. Ընտրեք բջիջ՝ եզակի թվերը դուրս բերելու համար, այս դեպքում ես ընտրում եմ E2 բջիջը, այնուհետև մուտքագրում եմ ստորև բերված բանաձևը և սեղմում Մտնել բանալի. Ընտրեք բանաձևի բջիջը և քաշեք այն Ավտոմատ լրացման բռնակ ներքեւ՝ մյուս տողերի բջիջների միջև եզակի թվերը ստանալու համար:

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

Notes:

1) Վերոհիշյալ երկու բանաձևերը կարող են կիրառվել միայն Excel-ում 365-ի համար: Եթե դուք օգտագործում եք Excel-ի այլ տարբերակ, քան Excel 365-ի համար, խնդրում ենք փորձեք հետևյալ VBA մեթոդը:
2) Համեմատվող բջիջները պետք է միմյանց կից լինեն նույն տողում կամ սյունակում:

Համեմատեք երկու սյունակները ստորակետերով առանձնացված արժեքներով և վերադարձրեք կրկնօրինակ կամ եզակի արժեքներ VBA-ով

Օգտատիրոջ կողմից սահմանված գործառույթը, որը տրված է այս բաժնում, օգնում է համեմատել ստորակետերով առանձնացված արժեքները երկու նշված բջիջներում և վերադարձնել կրկնօրինակ արժեքները կամ եզակի արժեքները նրանց միջև: Խնդրում ենք անել հետևյալը.

Վերցրեք նույն օրինակը, ինչ վերևում, սյունակ 1-ում ստորակետերով առանձնացված թվերը համեմատելու համար սյունակ 2-ի նույն շարքում ստորակետերով առանձնացված թվերի հետ և կրկնօրինակ կամ եզակի արժեքներ վերադարձնելու համար, խնդրում ենք փորձել այս բաժնում օգտագործողի կողմից սահմանված գործառույթը:

1. Բացման աշխատանքային գրքում սեղմեք կոճակը ալտ + F11 բացել ստեղները Microsoft Visual Basic հավելվածների համար պատուհան.

2. Մեջ Microsoft Visual Basic հավելվածների համար պատուհանը, սեղմեք Տեղադրել > Մոդուլներև պատճենեք հետևյալ VBA կոդը մեջ Մոդուլ (կոդ) պատուհան.

VBA կոդ. Համեմատեք ստորակետերով առանձնացված արժեքները երկու բջիջներում և վերադարձրեք կրկնօրինակ/եզակի արժեքներ

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. Կոդը կպցնելուց հետո Մոդուլ (կոդ) պատուհան, անցեք սեղմելու համար Գործիքներ > Սայլակ բացելու համար Հղումներ - VBAP նախագիծ պատուհանը, ստուգեք Microsoft Scripting Runtime տուփը եւ սեղմեք այն OK կոճակը:

4. Սեղմեք ալտ + Q ստեղները փակելու համար Microsoft Visual Basic հավելվածների համար պատուհան.

5. Այժմ դուք պետք է առանձին կիրառեք երկու գործառույթ՝ երկու ստորակետերով առանձնացված արժեքային բջիջներից կրկնօրինակ և եզակի արժեքները վերադարձնելու համար:

Վերադարձրեք կրկնօրինակ արժեքը

Ընտրեք բջիջ՝ կրկնօրինակ թվերը դուրս բերելու համար, այս օրինակում ես ընտրում եմ D2 բջիջը, այնուհետև մուտքագրում եմ ստորև բերված բանաձևը և սեղմում Մտնել բանալին՝ A2 և B2 բջիջների միջև կրկնվող թվերը ստանալու համար:

Ընտրեք բանաձևի բջիջը և քաշեք դրա Ինքնալրացման կարգավորիչը՝ մյուս տողերի բջիջների միջև կրկնօրինակ թվերը ստանալու համար:

=COMPARE(A2,B2,TRUE)

Վերադարձեք եզակի արժեքներ

Ընտրեք բջիջ՝ եզակի թվերը դուրս բերելու համար, այս օրինակում ես ընտրում եմ E2 բջիջը, այնուհետև մուտքագրում եմ ստորև բերված բանաձևը և սեղմում Մտնել բանալին՝ A2 և B2 բջիջների միջև եզակի թվեր ստանալու համար:

Ընտրեք բանաձևի բջիջը և քաշեք դրա Ինքնալրացման կարգավորիչը՝ մյուս տողերի բջիջների միջև եզակի թվերը ստանալու համար:

=COMPARE(A2,B2,FALSE)

Գրասենյակի արտադրողականության լավագույն գործիքները

🤖 Kutools AI օգնականՀեղափոխություն կատարել տվյալների վերլուծության հիման վրա՝ Խելացի կատարում   |  Ստեղծեք ծածկագիր  |  Ստեղծեք հատուկ բանաձևեր  |  Վերլուծել տվյալները և ստեղծել գծապատկերներ  |  Invoke Kutools-ի գործառույթները...
Հանրաճանաչ հատկություններ: Գտեք, ընդգծեք կամ նույնականացրեք կրկնօրինակները   |  Deleteնջել դատարկ շարքերը   |  Միավորել սյունակները կամ բջիջները՝ առանց տվյալների կորստի   |   Կլոր առանց բանաձևի ...
Super Փնտրել: Բազմաթիվ չափանիշների VLookup    Բազմակի արժեք VLookup  |   VLookup բազմաթիվ թերթերում   |   Fuzzy Փնտրել ....
Ընդլայնված բացվող ցուցակ: Արագ ստեղծեք բացվող ցուցակը   |  Կախված բացվող ցուցակ   |  Բազմակի ընտրություն Drop Down ցուցակ ....
Սյունակի կառավարիչ: Ավելացրեք որոշակի քանակությամբ սյունակներ  |  Տեղափոխել սյունակները  |  Փոխարկել թաքնված սյունակների տեսանելիության կարգավիճակը  |  Համեմատեք միջակայքերը և սյունակները ...
Առանձնահատկություններ: Ցանցի կենտրոնացում   |  Դիզայնի տեսք   |   Մեծ Formula Bar    Աշխատանքային գրքույկի և թերթիկների կառավարիչ   |  Ռեսուրսների գրադարան (Ավտոմատ տեքստ)   |  Ամսաթիվ ընտրող   |  Միավորել աշխատանքային թերթերը   |  Գաղտնագրել/գաղտնազերծել բջիջները    Ուղարկեք նամակներ ըստ ցանկի   |  Սուպեր զտիչ   |   Հատուկ զտիչ (զտել թավ/շեղ/շեղված...) ...
Լավագույն 15 գործիքների հավաքածու12 Տեքստ Գործիքներ (Ավելացրեք տեքստ, Հեռացնել նիշերը, ...)   |   50+ Աղյուսակ Տեսակներ (Գանտի աղյուսակը, ...)   |   40+ Գործնական Բանաձեւեր (Հաշվարկել տարիքը ՝ ելնելով ծննդյան տարեդարձից, ...)   |   19 միացում Գործիքներ (Տեղադրեք QR կոդ, Տեղադրեք նկար ուղուց, ...)   |   12 Փոխարկում Գործիքներ (Բառեր համարներ, Արտարժույթի փոխակերպումը, ...)   |   7 Միաձուլում և պառակտում Գործիքներ (Ընդլայնված կոմբինատ տողեր, Պառակտված բջիջներ, ...)   |   ... եւ ավելին

Լրացրեք ձեր Excel-ի հմտությունները Kutools-ի հետ Excel-ի համար և փորձեք արդյունավետությունը, ինչպես երբեք: Kutools-ը Excel-ի համար առաջարկում է ավելի քան 300 առաջադեմ առանձնահատկություններ՝ արտադրողականությունը բարձրացնելու և ժամանակ խնայելու համար:  Սեղմեք այստեղ՝ Ձեզ ամենաշատ անհրաժեշտ հատկանիշը ստանալու համար...

Նկարագրություն


Office Tab- ը Tabbed ինտերֆեյսը բերում է Office, և ձեր աշխատանքը շատ ավելի դյուրին դարձրեք

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50%-ով և նվազեցնում մկնիկի հարյուրավոր սեղմումները ձեզ համար ամեն օր:
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