Перейти к основному содержанию
 

Как сравнить две строки на сходство или выделить различия в Excel?

Автор: Силувия Последнее изменение: 2024 июля 08 г.

В некоторых случаях вам может потребоваться только сравнить две соседние ячейки строк и отметить их сходство или различие в Excel. В этой статье представлены два метода достижения этой цели.

Сравните две строки с формулой
Сравните две строки на сходство или выделите различия с кодом VBA


Сравните две строки с формулой

Как показано на скриншоте ниже, если вы просто хотите узнать, совпадают ли сравниваемые строки или нет, вы можете применить следующую формулу.

образец данных

1. Выберите пустую ячейку C2, введите формулу = ТОЧНЫЙ (A2; B2) в панель формул и нажмите клавишу Enter. Смотрите скриншот:

Сравнить две строки с формулой

Внимание: В формуле A2 и B2 - это ячейки, содержащие сравниваемые строки.

2. Продолжайте выбирать ячейку результата, затем перетаскивайте маркер заполнения к ячейкам, пока не получите все сравниваемые результаты.

Результат FALSE означает, что сравниваемые строки различны, а результат TRUE указывает, что две сравниваемые строки совпадают. Смотрите скриншот:

перетащите формулу вниз, чтобы получить сравниваемые результаты

скриншот kutools для Excel AI

Разблокируйте магию Excel с помощью Kutools AI

  • Умное исполнение: выполнение операций с ячейками, анализ данных и создание диаграмм — и все это осуществляется с помощью простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации рабочих процессов.
  • VBA-кодирование: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формулы: Легкое понимание сложных формул.
  • Перевод текста: преодолевайте языковые барьеры в своих таблицах.
Расширьте свои возможности Excel с помощью инструментов на базе искусственного интеллекта. Скачать сейчас и испытайте эффективность, как никогда раньше!

Сравните две строки на сходство или выделите различия с кодом 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 ключ для запуска кода. Во-первых Kutools for Excel в диалоговом окне выберите первый столбец текстовых строк, который необходимо сравнить, а затем щелкните значок OK .

код vba для выбора первого списка

4. Затем второй Kutools for Excel появится диалоговое окно, выберите вторую строку столбца и нажмите кнопку OK .

код vba для выбора второго списка

5. В последний Kutools for Excel диалоговом окне, если вы хотите сравнить строки на предмет сходства, щелкните Да кнопка. И чтобы выделить различия сравниваемых строк, нажмите кнопку Нет кнопка. Смотрите скриншот:

выберите кнопку «да» или «нет» в соответствии с вашими потребностями

Затем вы можете увидеть сравниваемые результаты, как показано на скриншоте ниже.

сходство или различия будут подчеркнуты


Статьи по теме:

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!