Як порівняти два рядки для схожості або виділити відмінності в Excel?
У деяких випадках вам може знадобитися лише порівняти дві сусідні комірки рядків і позначити їх схожість чи відмінність у програмі Excel. Ця стаття пропонує два способи досягнення цього.
Порівняйте два рядки з формулою
Порівняйте два рядки для подібності або виділення відмінностей із кодом VBA
Порівняйте два рядки з формулою
Як показано нижче на скріншоті, якщо ви просто хочете дізнатися, чи відповідають порівняні рядки чи ні, ви можете застосувати наступну формулу.
1. Виберіть порожню комірку С2, введіть формулу = ТОЧНО (A2, B2) у рядок формул, а потім натисніть клавішу Enter. Дивіться знімок екрана:
примітки: У формулі A2 і B2 - це клітинки, що містять рядки порівняння.
2. Продовжуйте обирати комірку результату, а потім перетягніть маркер заповнення до комірок, поки не отримаєте всі порівняні результати.
Результат FALSE означає, що порівняні рядки відрізняються, а результат TRUE вказує на те, що два порівняні рядки відповідають. Дивіться знімок екрана:
Порівняйте два рядки для подібності або виділення відмінностей із кодом VBA
Якщо ви хочете порівняти два рядки та виділити подібність або відмінності між ними. Наступний код VBA може вам допомогти.
1. прес інший + F11 клавіші одночасно, щоб відкрити Microsoft Visual Basic для додатків вікна.
2 В Microsoft Visual Basic для додатків вікна, натисніть Insert > Модулі. Потім скопіюйте та вставте наступний код у вікно коду.
Код 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 клавіша для запуску коду. У першій Kutools для Excel діалоговому вікні, виберіть перший стовпець текстових рядків, який потрібно порівняти, а потім клацніть на OK кнопки.
4. Потім другий Kutools для Excel спливаюче діалогове вікно, будь ласка, виберіть рядки другого стовпця та натисніть OK кнопки.
5. В останній Kutools для Excel діалоговому вікні, якщо ви хочете порівняти рядки для схожості, клацніть на Так кнопку. І щоб виділити відмінності порівняних рядків, клацніть на Немає кнопку. Дивіться знімок екрана:
Тоді ви можете побачити порівняні результати, як показано на знімку екрана нижче.
Статті по темі:
- Як порівняти два стовпці та виділити неперевершені дані в Excel?
- Як точно порівняти два рядки (з урахуванням регістру) в Excel?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!