45

У меня есть две колонки в Excel, которые я хочу сравнить и найти различия между ними.

Предположим, что:

  • Col A имеет 50 номеров, то есть 0511234567
  • Col B имеет 100 номеров в том же формате

11 ответов11

55

Использование условного форматирования

Выделите столбец A. Нажмите Условное форматирование > Создать новое правило > Используйте эту формулу, чтобы определить, какие ячейки нужно отформатировать > Введите ff. формула:

=countif($B:$B, $A1)

Нажмите кнопку « Формат» и измените цвет шрифта на тот, который вам нравится.

Повторите то же самое для столбца B, за исключением того, что используйте эту формулу и попробуйте другой цвет шрифта.

=countif($A:$A, $B1)

Использование отдельной колонки

В столбце C введите ff. формула в первую ячейку, а затем скопируйте его вниз.

=if(countif($B:$B, $A1)<>0, "-", "Not in B")

В столбце D введите FF. формула в первую ячейку, а затем скопируйте его вниз.

=if(countif($A:$A, $B1)<>0, "-", "Not in A")

Оба из них должны помочь вам визуализировать, какие элементы отсутствуют в другом столбце.

14

У Microsoft есть статья, подробно описывающая, как найти дубликаты в двух столбцах. Его можно изменить достаточно легко, чтобы найти уникальные элементы в каждом столбце.

Например, если вы хотите, чтобы Col C отображал записи, уникальные для Col A, и Col D для показа записей, уникальные для Col B:

A   B   C                                          D
1   3   =IF(ISERROR(MATCH(A1,$B$1:$B$5,0)),A1,"")  =IF(ISERROR(MATCH(B1,$A$1:$A$5,0)),B1,"")
2   5   (fill down)                                (fill down)
3   8   ..                                         ..
4   2   ..                                         ..
5   0   ..                                         ..
10

Вот формула, которую вы ищете:

=IF(ISERROR(NOT(MATCH(A1,$B$1:$B$11,0))),A1,"")

Введите описание изображения здесь

Источник: Excel: Найти различия между двумя столбцами

4

Если я хорошо понимаю ваш вопрос:

=if(Ax = Bx; True_directive ; False_directive)

Замените истинные / ложные директивы функцией или строкой, такой как "Равный" или "другой".

4

Скажи, что ты хочешь найти их в пол. B без совпадения в пол. А. Положите в C2:

=COUNTIF($A$2:$A$26;B2)

Это даст вам 1 (или больше), если есть совпадение, 0 в противном случае.

Вы также можете отсортировать оба столбца по отдельности, затем выберите оба, Перейти к специальным, выберите Различия строк. Но это перестанет работать после первого нового элемента, и вам придется вставить ячейку, а затем начать снова.

3

Это зависит от формата ваших ячеек и ваших функциональных требований. С начальным "0" они могут быть отформатированы как текст.

Тогда вы можете использовать функцию IF для сравнения ячеек в Excel:

=IF ( logical_test, value_if_true, value_if_false )

Пример:

=IF ( A1<>A2, "not equal", "equal" )

Если они отформатированы как числа, вы можете вычесть первый столбец из другого, чтобы получить разницу:

=A1-A2
2

Эта формула будет напрямую сравнивать две ячейки. Если они одинаковы, будет напечатано True , если существует одно различие, будет напечатано False . Эта формула не будет печатать, каковы различия.

=IF(A1=B1,"True","False")
1

Я использую Excel 2010 и просто выделяю два столбца, которые имеют два набора значений, которые я сравниваю, а затем нажимаю раскрывающееся меню «Условное форматирование» на домашней странице Excel, выбираю правила «Выделить ячейки» и затем различия. Затем он предлагает выделить различия или сходства и спрашивает, какой цвет подсветки вы хотите использовать ...

0

Сравнение может быть сделано с кодом Excel VBA. Процесс сравнения может быть выполнен с помощью Excel VBA Worksheet.Countif функция.

В этом шаблоне сравнивались две колонки на разных листах. Он нашел разные результаты, так как вся строка была скопирована на второй лист.

Код:

Dim stk, msb As Worksheet
Set stk = Sheets("Page1")
Set msb = Sheets("Page2")

Application.ScreenUpdating = False
sat = (msb.Range("A" & Rows.Count).End(xlUp).Row) + 1
For i = 2 To stk.Range("A" & Rows.Count).End(xlUp).Row
    If WorksheetFunction.CountIf(msb.Range("A2:A" & msb.Range("A" & Rows.Count).End(xlUp).Row), stk.Cells(i, "A")) = 0 Then
        msb.Range("a" & sat).EntireRow.Value = stk.Range("a" & i).EntireRow.Value
        msb.Range("a" & sat).Interior.ColorIndex = 22
        sat = sat + 1
    End If
Next
...

Видео урока: https://www.youtube.com/watch?v=Vt4_hEPsKt8

Пример файла можно скачать здесь

0

Комбинация функций NOT MATCH работает хорошо. Следующие работы тоже:

= IF (ISERROR (ВПР(<< товар в большем списке >>, << smaler список >>, 1, FALSE)), << товар в большем списке >>, "")

ПОМНИТЕ: меньший список ДОЛЖЕН быть отсортирован по возрастанию - требование vlookup

0

Это использует другой инструмент, но я только что нашел это очень легко сделать. Используя Notepad++:

В Excel убедитесь, что ваши 2 столбца отсортированы в том же порядке, затем скопируйте и вставьте столбцы в 2 новых текстовых файла, а затем выполните сравнение (из меню плагинов).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .