Сравнение двух столбцов и удаление дубликатов в Excel

  • Поделись Этим
Michael Brown

Вам потребуется около 10 минут, чтобы прочитать эту статью, и в течение следующих 5 минут (или даже быстрее, если вы выберете второе решение, описанное в статье) вы сможете легко сравнить два столбца Excel на предмет дубликатов и удалить или выделить найденные дубликаты. Итак, обратный отсчет начался!

Excel - это очень мощное и действительно классное приложение для создания и обработки больших массивов данных. Теперь, когда у вас есть много рабочих книг с массивом данных или, возможно, одна огромная таблица, вы можете захотеть сравнить 2 столбца на наличие дубликатов, а затем что-то сделать с найденными записями, например, удалить дублирующиеся строки, закрасить дубликаты или очистить содержимое дублирующихся ячеек. Этими двумя столбцами могут бытьрасположенные в одной таблице, смежно или несмежно, или они могут находиться в двух разных рабочих листах или даже рабочих книгах.

Скажем, у вас есть 2 колонки с именами людей - 5 имен в колонке A и 3 имени в колонке B, и вы хотите сравнить данные между этими двумя колонками, чтобы найти дубликаты. Как вы понимаете, это фиктивные данные, просто для примера; в реальных рабочих листах у вас обычно тысячи и десятки тысяч записей.

Вариант A : Оба столбца расположены на одном листе, в одной таблице: Колонка A и Колонка B

Вариант B : Два столбца расположены на разных листах: Столбец A в Листе2 и Колонка A в Листе3

Встроенный инструмент удаления дубликатов, доступный в Excel 2016, Excel 2013 и 2010, не может справиться с этим сценарием, поскольку он не может сравнивать данные между двумя столбцами. Более того, он может только удалять дубликаты, никаких других вариантов, таких как выделение или раскрашивание, увы, нет :-(.

Далее я собираюсь описать 2 возможных способа сравнения двух столбцов Excel, которые позволят вам найти и удалить дубликаты:

    Сравните 2 столбца для поиска дубликатов с помощью формул Excel

    Вариант A: оба столбца находятся в одном списке

    1. В первой пустой ячейке, в нашем примере это ячейка C1, напишите следующую формулу:

      =IF(ISERROR(MATCH(A1,$B$1:$B$10000,0)), "Уникальный", "Дубликат")

      В нашей формуле, A1 это первая ячейка первого столбца, которую мы хотим использовать для сравнения. $B$1 и $B$10000 это адреса первой и последней ячейки второго столбца, с которыми вы хотите сравнить. Обратите внимание на абсолютную ссылку на ячейку - знаки доллара ($) перед буквами столбцов и номерами строк. Я использую абсолютную ссылку специально, чтобы адреса ячеек оставались неизменными при копировании формулы.

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

      =IF(ISERROR(MATCH(B1,$A$1:$A$10000,0)), "Уникальный", "Дубликат")

      Вместо " Уникальный "/" Дубликат " вы можете написать свои собственные метки, например, " Не найдено "/" Найдено ", или оставить только " Дубликат " и введите "" вместо "Уникальный". В последнем случае у вас будут пустые ячейки рядом с ячейками, для которых дубликаты не были найдены, я считаю, что такое представление более удобно для анализа данных.

    2. Теперь скопируем формулу во все ячейки ячейки колонка C до последней строки, содержащей данные в столбце А. Для этого установите курсор в правый нижний угол ячейки C1 , и курсор изменится на черный крест, как показано на рисунке ниже:

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

      Совет: В больших таблицах быстрее копировать формулу с помощью горячих клавиш. Щелкните на ячейке C1 чтобы выделить ее и нажмите Ctrl + C (чтобы скопировать формулу в буфер обмена), затем нажмите Ctrl + Shift + End (чтобы выделить все непустые ячейки в столбце C), и, наконец, нажмите Ctrl + V (чтобы вставить формулу во все выделенные ячейки).

    3. Потрясающе, все дублирующиеся ячейки помечаются как "Дубликат":

    Вариант B: два столбца находятся на разных рабочих листах (рабочих книгах)

    1. В 1-й ячейке 1-го пустого столбца Листа2 (в нашем случае столбец B) напишите формулу:

      =IF(ISERROR(MATCH(A1,Sheet3!$A$1:$A$10000,0)),"", "Дубликат")

      Где Лист3 имя листа, на котором находится 2-й столбец, и $A$1:$A$10000 это адреса первой и последней ячеек этого второго столбца.

    2. Аналогично варианту А.
    3. Мы получили следующий результат:

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

    Работа с найденными дубликатами

    Отлично, мы нашли записи в первом столбце (столбец A), которые также существуют во втором столбце (столбец B). Теперь нам нужно что-то с ними сделать :)

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

    Показать только дублирующиеся строки в столбце A

    Если в колонках нет заголовков, их необходимо добавить. Для этого подведите курсор к числу, обозначающему 1-ю строку, и оно изменится на чёрная стрела как показано на скриншоте:

    Щелкните правой кнопкой мыши выбранную строку и выберите " Вставка " из контекстного меню:

    Дайте названия своим колонкам, например, " Имя " и " Дубликат? ". Затем переключитесь на Данные вкладку и нажмите кнопку Фильтр :

    После этого нажмите на маленькую серую стрелку рядом с " Дубликат? ", чтобы открыть выпадающий список, снимите флажки со всех пунктов, кроме "Дублировать", в этом списке и нажмите кнопку OK :

    Вот и все, теперь вы видите только те ячейки столбца A, значения которых дублируются в столбце B. В нашем тестовом листе таких ячеек всего три, как вы понимаете, в реальных листах их может быть больше, гораздо больше:

    Чтобы снова отобразить все строки столбца A, щелкните символ фильтра в столбце B, который теперь выглядит как воронка с маленькой стрелкой и установите флажок "Выбрать все". В качестве альтернативы вы можете сделать то же самое через Вкладка данных -> Выберите и отфильтруйте -> Очистить , как показано на скриншоте:

    Раскрасьте или выделите найденные дубликаты

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

    Затем отфильтруйте дубликаты, как описано выше, выделите все отфильтрованные ячейки и нажмите Ctrl + F1, чтобы открыть окно Форматирование ячеек В качестве примера, давайте изменим цвет фона дублированных строк на ярко-желтый. Конечно, вы можете изменить цвет фона ячеек с помощью команды Цвет заливки опция на Главная вкладку, но преимущество диалогового окна "Формат ячеек" в том, что оно позволяет вносить все изменения форматирования за один раз:

    Теперь вы точно не пропустите ни одной дублированной клетки:

    Удаление дубликатов из первого столбца

    Отфильтруйте таблицу так, чтобы отображались только ячейки с дублирующимися значениями, и выделите все эти ячейки.

    Если 2 сравниваемых столбца расположены на разных листах т.е. в отдельных таблицах, щелкните правой кнопкой мыши на выбранном диапазоне и выберите " Удалить строку " из контекстного меню:

    Нажмите OK когда Excel попросит вас подтвердить, что вы действительно хотите "Удалить всю строку листа", а затем очистить фильтр. Как вы можете видеть, остались только строки с уникальными значениями:

    Если 2 столбца расположены на одном рабочем листе Мы не можем удалить целые строки, содержащие дубликаты значений, потому что это приведет к удалению соответствующих ячеек во втором столбце. Поэтому, чтобы оставить только уникальные записи в столбце A, нужно сделать следующее:

    1. Отфильтруйте таблицу так, чтобы отображались только дублированные ячейки, и выделите все эти ячейки. Щелкните правой кнопкой мыши на выделении и выберите " Понятное содержание ":
    2. Очистите фильтр.
    3. Выберите все ячейки в столбце A, начиная с ячейки A1 и заканчивая последней ячейкой, содержащей данные.
    4. Перейти к Данные вкладку и нажмите кнопку Сортировать от А до Я В открывшемся диалоговом окне выберите " Продолжить текущий выбор " и нажмите Сортировать :
    5. Удалите столбец, содержащий формулу, потому что он вам больше не нужен, там остались только "Uniques".
    6. Вот и все, теперь столбец A содержит только уникальные данные, которых нет в столбце B :

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

    Сравните 2 столбца Excel на наличие дубликатов с помощью визуального мастера

    А теперь позвольте мне показать вам, как сравнить два столбца на наличие дубликатов с помощью наших инструментов Dedupe для Excel.

    1. Откройте рабочий лист (или рабочие листы), на котором расположены столбцы, которые вы хотите сравнить.
    2. Выберите любую ячейку в 1-м столбце, переключитесь в режим Ablebits Data вкладку и нажмите кнопку Сравнить таблицы кнопка:
    3. На сайте шаг 1 мастера, вы увидите, что ваш первый столбец уже выбран, поэтому просто нажмите кнопку Следующий .

      Примечание. Если вы хотите сравнить не только 2 столбца, но и 2 таблицы, вам нужно выбрать всю первую таблицу в этом шаге.

    4. На сайте шаг 2 мастера, выберите 2-й столбец, с которым вы хотите сравнить. Мы выбираем Лист2 в одной и той же рабочей книге. В большинстве случаев мастер автоматически выбирает 2-й столбец, если по какой-то причине этого не происходит, выберите целевой столбец с помощью мыши. Если вы сравниваете целые таблицы, выберите всю 2-ю таблицу.
    5. Выбрать, чтобы найти Дублирование значений :
    6. Выберите пару столбцов, которые вы хотите сравнить:

      Совет. Если вы сравниваете таблицы, вы можете выбрать несколько пар столбцов для сравнения, например, имя и фамилию. Для получения более подробной информации см. раздел Как удалить дубликаты из двух таблиц Excel.

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

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

    8. Нажмите Отделка и наслаждайтесь результатом. Теперь у нас есть хорошая, чистая таблица без дубликатов:

    Вспомните предыдущее решение и почувствуйте разницу :) Действительно, быстро и просто можно выводить рабочие листы с помощью Сравнить две таблицы На самом деле, это займет у вас меньше времени, чем вы потратили на чтение этой статьи.

    В настоящее время, Сравнить таблицы является частью нашего Ultimate Suite для Excel, коллекции из 70+ профессиональных инструментов, которые охватывают более 300 вариантов использования. Время идет, поэтому поспешите скачать его прямо сейчас!

    Если у вас есть вопросы или что-то осталось непонятным, пожалуйста, напишите мне в комментариях, и я с радостью расскажу подробнее. Спасибо, что читаете!

    Майкл Браун — увлеченный технологический энтузиаст, стремящийся упростить сложные процессы с помощью программных инструментов. Имея более чем десятилетний опыт работы в технологической отрасли, он отточил свои навыки в Microsoft Excel и Outlook, а также в Google Sheets и Docs. Блог Майкла посвящен тому, чтобы делиться своими знаниями и опытом с другими, предоставляя простые советы и учебные пособия для повышения производительности и эффективности. Являетесь ли вы опытным профессионалом или новичком, в блоге Майкла вы найдете ценную информацию и практические советы, которые помогут вам максимально эффективно использовать эти важные программные инструменты.