Сравните 2 столбца в Excel и покажите совпадающие значения, если в РАЗНЫХ строках - PullRequest
0 голосов
/ 28 февраля 2020

У меня есть файл Excel с 2 столбцами. Моя цель - выделить значения ячеек, если в 2 столбцах есть совпадающие значения (дубликаты). Здесь основной момент, на который следует обратить внимание, состоит в том, что ячейки следует выделять только в том случае, если дублированные значения принадлежат разным строкам COLUMN 1 и COLUMN 2. т. Е. Значение [COL1, ROW1] равно [COL2, ROW3].

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

enter image description here

Спасибо.

Ответы [ 3 ]

0 голосов
/ 28 февраля 2020

Существует два способа интерпретации вопроса.

(1) Вы хотите проверить, нет ли совпадений в текущей строке, но есть ли совпадение где-то еще.

Для первого столбца вы хотите проверить, не совпадает ли число рядом с ним, но есть ли совпадение где-то еще во втором столбце, поэтому используйте пользовательскую формулу:

=AND(B1<>A1,COUNTIF(B:B,A1))

Аналогично для второго столбец:

=AND(A1<>B1,COUNTIF(A:A,B1))

enter image description here

(2) Вы хотите проверить, есть ли совпадение где-то еще , даже если совпадение есть в текущая строка

=COUNTIF(B:B,A1)-(A1=B1)>0

и

=countif(A:A,B1)-(A1=B1)>0

enter image description here

0 голосов
/ 28 февраля 2020

Вы можете использовать SUMPRODUCT для проверки требуемых условий:

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

Я сделал поддельный набор данных, подобный этому:

enter image description here

Как видите, только ячейки со значениями 1 и 3 соответствует условию, поскольку значение 2 дублируется, но только в той же строке, поэтому его не следует выделять.

Правило My Conditional Formatting основано на следующей формуле:

=SUMPRODUCT(--($B$4:$B$8=A4);--(ROW($B$4:$B$8)<>ROW(A4)))>0

Вот как это работает:

  1. --($B$4:$B$8=A4) вернет массив 1 и 0, в зависимости от того, какие значения совпадают с A4
  2. --(ROW($B$4:$B$8)<>ROW(A4)) вернет массив из 1 и 0 в зависимости от того, какие ячейки получили ** отличается * номер строки от ячейки A4
  3. SUMPRODUCT умножит и суммирует оба массива, и мы будем получить окончательный массив из 1 и 0. Каждый 1 означает, что есть ячейка с тем же значением, но в другой строке . Суммируем все полученные 1 и 0.
  4. Сравниваем результат предыдущего шага с >0. IF true, означает, что есть 1 или более ячеек, которые получили одно и то же значение, но в другой строке, поэтому мы выделяем.

Надеюсь, это поможет.

ОБНОВЛЕНИЕ: Если вы хотите выделить значения столбца 2, вы можете использовать почти ту же формулу и правило CF, просто изменив ссылки на столбцы:

=SUMPRODUCT(--($A$4:$A$8=B4);--(ROW($A$4:$A$8)<>ROW(B4)))>0

enter image description here

0 голосов
/ 28 февраля 2020

См. Изображение ниже. Вы можете добавить еще одно правило к условному форматированию и остановить его, если оно истинно («A»), но оно будет выделено, если то же значение («A») снова появится где-то в выделении.

enter image description here

...