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

Ինչպե՞ս համեմատել երկու տող Excel- ի նմանության համար կամ ընդգծել տարբերությունները:

Որոշ դեպքերում կարող է անհրաժեշտ լինել ընդամենը համեմատել տողերի հարակից երկու բջիջներ և նշել դրանց նմանություններն ու տարբերությունները Excel- ում: Այս հոդվածը տրամադրում է ձեզ երկու մեթոդ դրան հասնելու համար:

Համեմատեք բանաձևի հետ երկու տող
Համեմատեք երկու տող նմանության համար կամ առանձնացրեք տարբերությունները VBA կոդի հետ


Համեմատեք բանաձևի հետ երկու տող

Ինչպես ցույց է տրված սքրինշոթից ներքևում, եթե դուք պարզապես ուզում եք իմանալ համեմատված տողերը համընկնում են, թե ոչ, կարող եք կիրառել հետևյալ բանաձևը:

1. Ընտրեք C2 դատարկ բջիջ, մուտքագրեք բանաձև = ACՇՄԱՐ (A2, B2) մուտքագրեք Formula Bar, ապա սեղմեք Enter ստեղնը: Տեսեք,

ՆշումԲանաձևում `A2 և B2, համեմատական ​​տողերը պարունակող բջիջներ են:

2. Շարունակեք ընտրել արդյունքային բջիջը, այնուհետև լրացնել բռնիչը քաշել դեպի բջիջները, մինչև ստանաք համեմատված բոլոր արդյունքները:

ԿԵ result արդյունքը նշանակում է, որ համեմատված տողերը տարբեր են, և TRՇՄԱՐՏԱԿԱՆ արդյունքը ցույց է տալիս, որ երկու համեմատված տողերը համընկնում են: Տեսեք,


Համեմատեք երկու տող նմանության համար կամ առանձնացրեք տարբերությունները VBA կոդի հետ

Եթե ​​ցանկանում եք համեմատել երկու տող և ընդգծել դրանց նմանությունն ու տարբերությունը: Հետևյալ VBA կոդը կարող է օգնել ձեզ:

1. Մամուլ ալտ + F11 ստեղները միաժամանակ բացելու համար Microsoft Visual Basic հավելվածների համար պատուհան.

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

VBA կոդ. Համեմատեք երկու սյունակների տողերը նմանության կամ ընդգծված տարբերությունների համար

Sub highlight()
    Dim xRg1 As Range
    Dim xRg2 As Range
    Dim xTxt As String
    Dim xCell1 As Range
    Dim xCell2 As Range
    Dim I As Long
    Dim J As Integer
    Dim xLen As Integer
    Dim xDiffs As Boolean
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
lOne:
    Set xRg1 = Application.InputBox("Range A:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg1 Is Nothing Then Exit Sub
    If xRg1.Columns.Count > 1 Or xRg1.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
        GoTo lOne
    End If
lTwo:
    Set xRg2 = Application.InputBox("Range B:", "Kutools for Excel", "", , , , , 8)
    If xRg2 Is Nothing Then Exit Sub
    If xRg2.Columns.Count > 1 Or xRg2.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
        GoTo lTwo
    End If
    If xRg1.CountLarge <> xRg2.CountLarge Then
       MsgBox "Two selected ranges must have the same numbers of cells ", vbInformation, "Kutools for Excel"
       GoTo lTwo
    End If
    xDiffs = (MsgBox("Click Yes to highlight similarities, click No to highlight differences ", vbYesNo + vbQuestion, "Kutools for Excel") = vbNo)
    Application.ScreenUpdating = False
    xRg2.Font.ColorIndex = xlAutomatic
    For I = 1 To xRg1.Count
        Set xCell1 = xRg1.Cells(I)
        Set xCell2 = xRg2.Cells(I)
        If xCell1.Value2 = xCell2.Value2 Then
            If Not xDiffs Then xCell2.Font.Color = vbRed
        Else
            xLen = Len(xCell1.Value2)
            For J = 1 To xLen
                If Not xCell1.Characters(J, 1).Text = xCell2.Characters(J, 1).Text Then Exit For
            Next J
            If Not xDiffs Then
                If J <= Len(xCell2.Value2) And J > 1 Then
                    xCell2.Characters(1, J - 1).Font.Color = vbRed
                End If
            Else
                If J <= Len(xCell2.Value2) Then
                    xCell2.Characters(J, Len(xCell2.Value2) - J + 1).Font.Color = vbRed
                End If
            End If
        End If
    Next
    Application.ScreenUpdating = True
End Sub

3. Սեղմեք F5 ծածկագիրը գործելու համար: Առաջինում Excel- ի համար նախատեսված գործիքներ երկխոսության տուփ, ընտրեք տեքստի տողերի առաջին սյունակը, որը դուք պետք է համեմատեք, և այնուհետև կտտացրեք այն OK կոճակը:

4. Հետո երկրորդը Excel- ի համար նախատեսված գործիքներ երկխոսության պատուհանը հայտնվում է, ընտրեք երկրորդ սյունակի տողերը և կտտացրեք այն OK կոճակը:

5. Վերջինում Excel- ի համար նախատեսված գործիքներ եթե ցանկանում եք համեմատել տողերը նմանության համար, կտտացրեք այն այո կոճակ Եվ համեմատված տողերի տարբերությունները ընդգծելու համար կտտացրեք այստեղին Ոչ կոճակ Տեսեք,

Դրանից հետո դուք կարող եք տեսնել համեմատված արդյունքները, ինչպես ցույց է տրված նկարում:


Առնչվող հոդվածներ քանակը:


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

Excel-ի համար Kutools-ը լուծում է ձեր խնդիրների մեծ մասը և բարձրացնում ձեր արտադրողականությունը 80%-ով

  • Վերաօգտագործել: Արագ տեղադրեք բարդ բանաձևեր, գծապատկերներ և այն ամենը, ինչ դուք նախկինում օգտագործել եք. Ryածկագրել բջիջները գաղտնաբառով; Ստեղծեք փոստային ցուցակ և նամակներ ուղարկել ...
  • Super Formula Bar (հեշտությամբ խմբագրեք տեքստի և բանաձևի բազմաթիվ տողեր); Ընթերցանության դասավորությունը (հեշտությամբ կարդալ և խմբագրել մեծ թվով բջիջներ); Տեղադրել ֆիլտրացված տիրույթում...
  • Միաձուլել բջիջները / տողերը / սյունակները առանց տվյալների կորստի. Պառակտված բջիջների պարունակությունը; Միավորել կրկնօրինակ տողերը / սյունակները... Կանխել կրկնօրինակ բջիջները; Համեմատեք միջակայքերը...
  • Ընտրեք Կրկնօրինակ կամ Եզակի Շարքեր; Ընտրեք դատարկ շարքեր (բոլոր բջիջները դատարկ են); Super Find և Fuzzy Find շատ աշխատանքային գրքույկներում; Պատահական ընտրություն ...
  • Actշգրիտ պատճեն Բազմաթիվ բջիջներ ՝ առանց բանաձևի հղումը փոխելու; Ավտոմատ ստեղծեք հղումներ դեպի մի քանի թերթեր; Տեղադրեք փամփուշտներ, Տուփեր և ավելին ...
  • Քաղվածք տեքստ, Տեքստ ավելացնել, հեռացնել ըստ դիրքի, Հեռացնել տարածությունը; Ստեղծել և տպել էջային ենթագոտիներ; Փոխարկել բջիջների բովանդակության և մեկնաբանությունների միջև...
  • Սուպեր զտիչ (պահպանել և կիրառել ֆիլտրի սխեմաները այլ թերթերի վրա); Ընդլայնված տեսակավորում ըստ ամիս / շաբաթ / օր, հաճախականություն և ավելին; Հատուկ զտիչ համարձակ, շեղատառով ...
  • Միավորել աշխատանքային տետրերը և աշխատանքային թերթերը; Միավորել աղյուսակները ՝ հիմնված հիմնական սյունակների վրա; Տվյալները բաժանեք մի քանի թերթերի; Խմբաքանակի փոխակերպում xls, xlsx և PDF...
  • Ավելի քան 300 հզոր հատկություններ. Աջակցում է Office / Excel 2007-2021 և 365: Աջակցում է բոլոր լեզուներին: Հեշտ տեղակայում ձեր ձեռնարկությունում կամ կազմակերպությունում: Ամբողջական հնարավորություններ 30-օրյա անվճար փորձարկում: 60-օրյա գումարի վերադարձի երաշխիք:
kte էջանիշը 201905

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

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50%-ով և նվազեցնում մկնիկի հարյուրավոր սեղմումները ձեզ համար ամեն օր:
officetab ներքևում
Տեսակավորել մեկնաբանությունները ըստ
մեկնաբանություններ (19)
Դեռևս գնահատականներ չկան: Եղիր առաջինը, ով կգնահատի:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հարգելի պարոն, շատ շնորհակալ եմ ձեր VBA կոդի համար: Դա շատ օգտակար է: Իրականում ես կոդավորման մասին որևէ գիտելիքներ չունեմ: Այսպիսով, նույնիսկ իմ պահանջներին համապատասխան կոդավորման մի փոքր մասը փոփոխելու համար, ես անօգնական եմ, այս կոդավորման վերաբերյալ մեկ խնդրանք ունեմ, որպեսզի այն ավելի արդյունավետ և օգտագործողի համար հարմար լինի: Խնդրում եմ կարող եք օգնել ինձ?? Վերոնշյալ կոդավորման հիմնական նպատակն է գտնել և ընդգծել երկու սյունակներում տվյալների միջև եղած տարբերությունները՝ հեշտ հղման համար: Բայց այս կոդավորումը քիչ բարդ է, քանի որ դա վերաբերում է օբյեկտիվին: Քանի որ այն հաշվի է առնում բովանդակության միջև եղած «տարածությունները» և ընդգծում է ամբողջ տվյալները, թեև տողերը նույնն են: Այսպիսով, եթե մենք կարողանանք համեմատել տվյալները առանց բացատների, ապա մենք կարող ենք զտել ընդգծված տվյալների մասը: Բացի այդ, միայն այն տողերն ընդգծելու փոխարեն, որոնք նման չեն, այն ընդգծում է ամբողջ տվյալները հենց առաջին տարբեր տողից մինչև տվյալներ մինչև բջջի վերջը: Ուստի ես ուզում եմ իմ խնդրանքը եզրափակել ստորև 2 կետով. 1) խնդրում ենք խմբագրել կոդավորումը՝ բջիջները համեմատելու համար՝ առանց բացատները հաշվի առնելու, 2) խնդրում ենք խմբագրել կոդավորումն այնպես, որ այն կարողանա ընդգծել միայն տարբեր տողեր, բայց չընդգծել ամբողջ պարբերությունը առաջին տարբեր տողային կետից: Շատ շնորհակալ եմ օգնության համար։ Հարգանքներով՝ Սուրյա
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես ունեմ նույն խնդրանքը, ինչ suryateja.
2) խնդրում ենք խմբագրել կոդավորումն այնպես, որ այն կարողանա ընդգծել միայն տարբեր տողեր, բայց չընդգծել ամբողջ պարբերությունը առաջին տարբեր տողային կետից:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Կոդի վերը նշված չափաբաժինը չի աշխատում, եթե որևէ բջիջ պարունակում է բանաձև:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Thank you!
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Պետք է իմանալ, թե ինչպես կարող եմ նույնականացնել տողերը նույն տեքստային ձևաչափով, որպեսզի կարողանամ ակտը կապել բոլոր այդ տողերի հետ: Օրինակ, եթե ես ունեմ 1,000 բջիջ տարբեր բովանդակությամբ, ես ուզում եմ առանձնացնել դրանք, որոնք ունեն 042-XXX-XX-00 ձևաչափ՝ դրանք կապելու համար acct#-ին:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարեւ Ձեզ
Ինչպե՞ս կարող եմ պատճենել 1-ին սյունակը 2-րդ սյունակի կողքին, եթե 1-ին սյունակի մեկ կամ մի քանի տարրեր նման են / նույնական են սյունակ 2-ի մեկ կամ մի քանի տարրերի հետ:
Կներեք, բայց ես որոշ ժամանակ աշխատում էի Excel VBA-ի հետ և չեմ կարողանում գտնել այս հարցի պատասխանը:
Նախապես շնորհակալություն պատասխանի համար։
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարեւ Ձեզ
Ինչպե՞ս կարող եմ պատճենել 1-ին սյունակը 2-րդ սյունակի կողքին, եթե 1-ին սյունակի մեկ կամ մի քանի տարրեր նման են / նույնական են սյունակ 2-ի մեկ կամ մի քանի տարրերի հետ:
Կներեք, բայց ես որոշ ժամանակ աշխատում էի Excel VBA-ի հետ և չեմ կարողանում գտնել այս հարցի պատասխանը:
Նախապես շնորհակալություն պատասխանի համար։
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Շատ օգտակար սցենար! շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ինչպե՞ս կարող եմ ստանալ տարբերություն երկու տողերի միջև:

Օրինակ՝ «123456» և «213456» ==> 2 տարբերություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
պարզապես ուզում եմ շնորհակալություն հայտնել:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ես այնքան հույս ունեի, որ սա կաշխատի: Այն, ըստ երևույթին, համեմատում է ամբողջական բջիջները և ոչ թե բջիջների մեջ գտնվող նիշերը: Պարզապես Քենդիին մի խցում համեմատելը մյուս խցում Էնդիի հետ նմանություն չի գտնում: Եվ երբ ես համեմատում եմ տարբերությունների համար, ամբողջ Անդի անունը ընդգծվում է կարմիրով:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Նախ..ՇՆՈՐՀԱԿԱԼՈՒԹՅՈՒՆ Ընդլայնել գրասենյակի մարդիկ լավ կոդի համար:

Փորձեք այս փոփոխությունը: Այն պարզապես ընդլայնում է մեկ նիշի ստուգման օղակը՝ ներառելով տառատեսակի գույնի ձևաչափումը, ավելացնում է լռելյայն «Սև» և նաև համեմատում է նիշերը համեմատվող երկու բջիջներից ամենաերկարի հետ:

Sub highlight()
    Dim xRg1 As Range
    Dim xRg2 As Range
    Dim xTxt As String
    Dim xCell1 As Range
    Dim xCell2 As Range
    Dim I As Long
    Dim J As Integer
    Dim xLen As Integer
    Dim xDiffs As Boolean
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
lOne:
    Set xRg1 = Application.InputBox("Range A:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg1 Is Nothing Then Exit Sub
    If xRg1.Columns.Count > 1 Or xRg1.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
        GoTo lOne
    End If
lTwo:
    Set xRg2 = Application.InputBox("Range B:", "Kutools for Excel", "", , , , , 8)
    If xRg2 Is Nothing Then Exit Sub
    If xRg2.Columns.Count > 1 Or xRg2.Areas.Count > 1 Then
        MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel"
        GoTo lTwo
    End If
    If xRg1.CountLarge <> xRg2.CountLarge Then
       MsgBox "Two selected ranges must have the same numbers of cells ", vbInformation, "Kutools for Excel"
       GoTo lTwo
    End If
    xDiffs = (MsgBox("Click Yes to highlight similarities, click No to highlight differences ", vbYesNo + vbQuestion, "Kutools for Excel") = vbNo)
    Application.ScreenUpdating = False
    xRg2.Font.ColorIndex = xlAutomatic
    For I = 1 To xRg1.Count
        Set xCell1 = xRg1.Cells(I)
        Set xCell2 = xRg2.Cells(I)
        If xCell1.Value2 = xCell2.Value2 Then
            If Not xDiffs Then xCell2.Font.Color = vbRed
        Else
            xLen = Application.WorksheetFunction.Max(Len(xCell1.Value2), Len(xCell2.Value2))
            For J = 1 To xLen
                xCell2.Characters(J, Len(xCell2.Value2) - J + 1).Font.Color = vbBlack
                If Not xCell1.Characters(J, 1).Text = xCell2.Characters(J, 1).Text Then
                    If Not xDiffs Then
                        If J <= Len(xCell2.Value2) And J > 1 Then
                            xCell2.Characters(1, J - 1).Font.Color = vbRed
                        End If
                    Else
                        If J <= Len(xCell2.Value2) Then
                            xCell2.Characters(J, Len(xCell2.Value2) - J + 1).Font.Color = vbRed
                        End If
                    End If
                End If
            Next J
        End If
    Next
    Application.ScreenUpdating = True
End Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
ՇՆՈՐՀԱԿԱԼՈՒԹՅՈՒՆ! սա հենց այն է, ինչ ինձ պետք էր!
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Այս կոդի որևէ դժվարություն խուսափելու համար այն բացատների հետ, որոնք պետք է լինեն ASCII արժեքով 32 կամ 160 (հատկապես, եթե տողը գալիս է HTML-ից), դուք պետք է ներառեք 46-րդ թեստային տողը if endif հանգույցում, ինչպես ստորև.
Եթե ​​ոչ ((Asc(xCell1.Characters(J, 1).Text) = 32 Կամ Asc(xCell1.Characters(J, 1).Text) = 160) And (Asc(xCell2.Characters(J, 1).Text ) = 32 Կամ Asc(xCell2.Characters(J, 1).Text) = 160)) Հետո
( տող 46 If Not xCell1.Characters (J, 1).Text = xCell2.Characters (J, 1).Text, then Exit For)
Վերջ: Եթե

Այնուամենայնիվ, շնորհակալություն կոդի համար:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ինչպե՞ս կարող եմ սա ճիշտ ավելացնել: Ես սխալ եմ ստանում, երբ փորձեցի փոխարինել 46 տողը: Շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ձեր օրինակում «եկեք փորձենք» բառերը նման են, բայց ձեր կոդը չի կարող ընդգծել այն:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Confrontando la cella VIA ROMA 1 con la cella VIA RROMA 1 il programma evidenzia in rosso sia RROMA che 1. Չէ՞ որ դուք պետք է գնեք մոդո che evidenzi solo la lettera diversa e quindi R? Գրազի
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջու՜յն,
Ինչպե՞ս կարող եմ խմբագրել կոդը այնպես, որ այն համեմատի 2 սյունակ և ընդգծի երկու սյունակների տարբերությունները:
Օրինակ ՝
Սյունակ 1
A1, A2, A3, A4: Ընդգծեք A1 և A3
Սյունակ 2
A2,A4,A5,A6,A7: Highlight A5,A6,A7
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև Լալա,
Լավ կլիներ, եթե կարողանայիք վերբեռնել ձեր տվյալների սքրինշոթը և այն արդյունքը, որը ցանկանում եք ստանալ:
Առայժմ ոչ մի մեկնաբանություն չկա
Թողեք ձեր մեկնաբանությունները
Հրապարակում որպես հյուր
×
Գնահատեք այս գրառումը.
0   Անձնավորություններ
Առաջարկվող վայրեր

Հետեւեք մեզ

Հեղինակային իրավունքի © 2009 - www.extendoffice.com. | Բոլոր իրավունքները պաշտպանված են. Powered by ExtendOffice. | | Կայքի քարտեզ
Microsoft- ը և Office- ի պատկերանշանը հանդիսանում են Microsoft Corporation- ի ապրանքային նշաններ կամ գրանցված ապրանքային նշաններ ԱՄՆ-ում և (կամ) այլ երկրներում:
Պաշտպանված է Sectigo SSL- ի կողմից