Удаление дубликатов строк в Excel. Excel — как удалить дубликаты но оставить уникальные значения? Как в экселе удалить дублирующиеся строки

Пожалуй, каждый пользователь сталкивался с проблемой удаления повторяющихся значений. К счастью, в самом редакторе Excel предусмотрены средства и инструменты, позволяющие наиболее легко разобраться с подобной неприятностью. В этой статье подробно рассмотрим самые простые и эффективные пути решения этой задачи. Итак, давайте разбираться. Поехали!

Microsoft Excel – это одна из самых популярных программ для работы с числами и таблицами

Второй подход заключается в использовании расширенного фильтра и работает как на новых версиях Microsoft Excel, так и на старых, включая 2003. Тут придётся понажимать несколько больше, однако, такой подход в разы более эффективен. Итак, сначала нужно открыть таблицу, затем перейдите во вкладку «Данные», в блоке «Сортировка и фильтр» выберите пункт «Дополнительно». Перед вами откроется окно, в котором нужно будет задать диапазон (только в том случае, если у вас есть разрывы, в противном случае ничего задавать не нужно) и поставить птичку на пункте «Только уникальные записи». Если вы хотите просто скрыть дубликаты, чтобы иметь возможность ещё поработать с ними в дальнейшем, то выберите фильтрование списка на месте, если же вы укажете «скопировать результат в другое место», то повторяющиеся элементы будут удалены. После нажатия «ОК» таблица будет отфильтрована программой в соответствии с выбранными вами параметрами. Теперь выделите цветом уникальные элементы и нажмите «Очистить». В результате вы увидите все дубликаты, так как они не будут отмечены цветом. Воспользовавшись автофильтром, можно будет получить полный перечень неуникальных значений.

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

Задачу удаления дубликатов или повторяющихся значений в Excel можно решать различными способами. В Excel 2007 и выше удалить дубликаты можно стандартными средствами, в Excel 2003 такие средства отсутствуют, но задача решается при помощи VBA (Visual Basic for Application).

Удаление дубликатов в Excel 2003

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

Option Explicit Sub Udalenie_Dublikatov_Znachenij() "макрос удаляет значения ячеек, если находит дубликаты Dim iCount As Long, i As Long, j As Long, k As Long Dim Str1 As String, Str2 As String k = 1 iCount = Selection.Cells.Count For i = k To iCount Str1 = CStr(Selection.Cells(i).Value) If Str1 <> <> j And Str1 = Str2 Then Selection.Cells(j).ClearContents Next j End If Next i End Sub

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

Option Explicit Sub Udalenie_Dublikatov_Yacheek() "макрос удаляет ячейки, если находит дубликаты Dim iCount As Long, i As Long, j As Long, k As Long Dim Str1 As String, Str2 As String Dim Group As Range k = 1 iCount = Selection.Cells.Count For i = k To iCount Str1 = CStr(Selection.Cells(i).Value) If Str1 <> "" Then For j = i To iCount Str2 = CStr(Selection.Cells(j).Value) If i <> j And Str1 = Str2 Then If Group Is Nothing Then _ Set Group = Selection.Cells(j) Else Set Group = Union(Group, Selection.Cells(j)) End If Next j End If Next i On Error Resume Next Group.Delete Shift:=xlUp End Sub

Для того чтобы ячейки удалялись со сдвигом влево, необходимо в предпоследней строке вместо xlUp написать xlToLeft.

Удаление дубликатов в Excel 2007/2010/2013

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

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

Если запустить макрорекордер и записать действие, закрепленное за кнопкой "Удалить дубликаты", получится макрос, программный код которого приведен ниже. Этот макрос удаляет дубликаты в диапазоне A1:A20.

Sub Udalenie_Dublikatov() " макрос удаляет дубликаты (повторяющиеся значения) в диапазоне A1:A20 активного рабочего листа ActiveSheet.Range("$A$1:$A$20").RemoveDuplicates Columns:=1, Header:=xlNo End Sub

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

В данной статье мы разберем, как удалить дубликаты в Excel 2007, Excel 2010, Excel 2013 и Excel 2016. Вы узнаете несколько разных способов как найти и удалить дубликаты в Excel с или без первых вхождений, удалить дубликаты строк , как удалить дубликаты в столбце , как обнаружить абсолютные дубликаты и частичные совпадения. В статье рассмотрены следующие пункты:

Удалить дубликаты строк в Excel с помощью функции «Удалить дубликаты»

Если вы используете последними версиями Excel 2007, Excel 2010, Excel 2013 или Excel 2016, у вас есть преимущество, потому что эти версии содержат встроенную функцию для поиска и удаления дубликатов - функцию Удалить дубликаты .

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

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

  1. Для начала выберите диапазон, в котором вы хотите удалить дубликаты . Чтобы выбрать всю таблицу, нажмите Ctrl+A .
  2. Далее перейдите на вкладку «ДАННЫЕ » --> группа «Работа с данными » и нажмите кнопку «Удалить дубликаты ».
Удалить дубликаты в Excel - Функция Удалить дубликаты в Excel
  1. Откроется диалоговое окно «Удалить дубликаты ». Выберите столбцы для проверки дубликатов и нажмите «ОК ».
  • Чтобы удалить дубликаты строк , имеющие полностью одинаковые значения во всех столбцах, оставьте флажки рядом со всеми столбцами, как показано на изображении ниже.
  • Чтобы удалить частичные дубликаты на основе одного или нескольких ключевых столбцов, выберите только соответствующие столбцы. Если в вашей таблице много столбцов, лучше сперва нажать кнопку «Снять выделение », а затем выбрать столбцы, которые вы хотите проверить на предмет дубликатов.
  • Если в вашей таблице нет заголовков , уберите флаг с поля «Мои данные содержат заголовки » в правом верхнем углу диалогового окна, которое обычно выбирается по умолчанию.

Удалить дубликаты в Excel - Выбор столбца(ов), который вы хотите проверить на наличие дубликатов

Готово! Все дубликаты строк в выбранном диапазоне удалены, и отображается сообщение, указывающее, сколько было удалено дубликатов записей и сколько уникальных значений осталось.

Удалить дубликаты в Excel - Сообщение о том, сколько было удалено дубликатов

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

Удалить дубликаты, скопировав уникальные записи в другое место

Другой способ удалить дубликаты в Excel - это разделение уникальных значений и копирование их на другой лист или в выбранный диапазон на текущем листе. Разберем этот способ.

  1. Выберите диапазон или всю таблицу, которую вы хотите удалить дубликаты .
  2. Перейдите во вкладку «ДАННЫЕ » --> группа «Сортировка и фильтр » и нажмите кнопку «Дополнительно ».

Удалить дубликаты в Excel - Использование дополнительного фильтра для удаления дубликатов
  1. В диалоговом окне «Расширенный фильтр » выполните следующие действия:
  • Выберите пункт «скопировать результат в другое место ».
  • Проверьте, отображается ли правильный диапазон в Исходном диапазоне . Это должен быть диапазон, выбранный на шаге 1.
  • В поле Поместить результат в диапазон введите диапазон, в котором вы хотите скопировать уникальные значения (на самом деле достаточно выбрать верхнюю левую ячейку диапазона назначения).
  • Выберите Только уникальные записи

Удалить дубликаты в Excel - Фильтр дубликатов
  1. Наконец, нажмите «ОК ». Excel удалит дубликаты и скопирует уникальные значения в новое указанное место:

Удалить дубликаты в Excel - Уникальные записи, скопированные из другого места

Таким образом вы получаете новые данные, на основе указанных, но с удаленными дубликатами .

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

Удалить дубликаты строк в Excel с помощью формул и фильтра

Еще один способ удалить дубликаты в Excel - это определить их с помощью формулы, отфильтровать и удалить дубликаты строк .

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

  1. В зависимости от вашей задачи используйте одну из следующих формул для поиска дубликатов.

Формулы для поиска дубликатов в 1 столбце

  • Дубликаты за исключением 1-го вхождения:

ЕСЛИ(СЧЁТЕСЛИ($A$2:$A2; $A2)>1; "Дубликат"; "")

  • Дубликаты с 1-го вхождения:

ЕСЛИ(СЧЁТЕСЛИ($A$2:$A$10; $A2)>1; "Дубликат"; "Уникальное")

Где ячейка A2 является первой, а A10 - последней ячейкой диапазона для поиска дубликатов.

Формулы для поиска дубликатов строк

  • Дубликаты строк, кроме 1-го вхождения. То есть, если в результате есть две или более одинаковых строки, то первая из них будет отмечена, как уникальная, а все последующие как дубликаты:

ЕСЛИ(СЧЁТЕСЛИМН($A$2:$A2; $A2; $B$2:$B2; $B2; $C$2:$C2; $C2)>1;"Дубликат строки"; "Уникальное")

  • Дубликаты строк с 1-ым вхождением. В данном случае, если в результате поиска есть две или более одинаковых строк, то все они будут отмечены как дубликаты:

ЕСЛИ(СЧЁТЕСЛИМН($A$2:$A$10; $A2; $B$2:$B$10; $B2; $C$2:$C$10; $C2)>1; "Дубликат строки"; "Уникальное")

Где A, B и C - столбцы, подлежащие проверке на дубликаты.

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

Удалить дубликаты в Excel - Формула для идентификации дубликатов строк за исключением первых случаев
  1. Выберите любую ячейку в своей таблице и примените автоматический фильтр, нажав кнопку «Фильтр » на вкладке «ДАННЫЕ », или «Сортировка и фильтр » --> «Фильтр » на вкладке «ГЛАВНАЯ ».

Удалить дубликаты в Excel - Применение фильтра к ячейкам (Вкладка ДАННЫЕ)
  1. Отфильтруйте дубликаты строк , щелкнув стрелку в заголовке столбца «Дубликаты », а затем установите флажок «Дубликат строки ».

Удалить дубликаты в Excel - Фильтр дубликатов строки
  1. И, наконец, удалите дубликаты строк . Чтобы сделать это, выберите отфильтрованные строки, переместив указатель мыши на номера строк, щелкните по ним правой кнопкой мыши и выберите «Удалить строку » в контекстном меню. В данном случае для удаления дубликатов не стоит пользоваться клавишей «Delete » на клавиатуре, потому что нам необходимо удалить целые строки, а не только содержимое ячеек:

Удалить дубликаты в Excel - Фильтрация и удаление дубликатов строк

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

Доброго времени суток!

С популяризацией компьютеров за последние 10 лет - происходит и популяризация создания отчетов (документов) в программе Excel.

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

Собственно, ко мне ни раз и ни два обращались с подобными вопросами, и я решил оформить работу с дубликатами в отдельную небольшую статью (которую вы сейчас читаете). Приведу самые часто-встречаемые задачи, и покажу их решение.

Примечание : все примеры ниже будут представлены в Office 2016 (актуально также для Office 2013, 2010, 2007). Рекомендую всегда использовать относительно новые версии Office: в них и быстрее работать, и проще ☻.

Простое авто-удаление дублей строк

Представим одну из самых популярных задач: есть список строк с ФИО людей, в строках много совпадений, нужно оставить только уникальные значения (кстати, это просто пример, все совпадения с реальными людьми - случайны).

Задачка проиллюстрирована на скриншоте ниже (это пример: понятно, что 2 строки можно удалить и руками, но в реальности же строк может быть и 2000, и 20000, где "руки" будут бессильны...!).

Чтобы в Excel удалить повторяющиеся строки, необходимо:


Копирование уникальных строк (данных) в новое место

Если вы не хотите трогать и изменять текущие данные (текущую таблицу) - то можно просто скопировать только уникальные строки (значения) из нее в новую таблицу. Это очень удобно, когда вы хотите наглядно сравнить, что было, и что получилось (а также волнуетесь за старые данные, которые еще могут пригодиться).

Как это делается:


Поиск и выделение повторяющихся значений

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

Работая с Microsoft Excel очень часто возникает ситуация, когда необходимо удалить повторяющиеся строки. Этот процесс может превратиться в бессмысленную, монотонную и трудоемкую работу, однако, существует ряд способов упростить задачу. Сегодня мы разберем несколько удобных методов нахождения и удаления повторяющихся строк в Excel. В качестве примера возьмем следующую таблицу с данными:

Вариант 1: Команда Удалить дубликаты в Excel

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

Перейдите на вкладку Date (Данные), а затем нажмите команду Remove Duplicates (Удалить дубликаты), как показано ниже.

Появится небольшое диалоговое окно Remove Duplicates (Удалить дубликаты). Можно заметить, что выделение первой строки снимается автоматически. Причиной тому является флажок, установленный в пункте My data has headers (Мои данные содержат заголовки).

В нашем примере нет заголовков, поскольку таблица начинается с 1-й строки. Поэтому снимем флажок. Сделав это, Вы заметите, что вся таблица снова выделена, а раздел Columns (Колонны) изменится с dulpicate на Column A , B и С .

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

Вариант 2: Расширенный фильтр

Вторым инструментом Excel, с помощью которого можно найти и удалить дубликаты, является Расширенный фильтр . Этот метод также применим к Excel 2003. Чтобы применить фильтр, необходимо выделить всю таблицу, как и прежде, воспользовавшись сочетанием клавиш Ctrl+A .

Затем перейдите на вкладку Data (Данные), в группе команд Sort & Filter (Сортировка и фильтр) нажмите команду Advanced (Дополнительно), как показано ниже. Если Вы используете Excel 2003, вызовите раскрывающееся меню Data (Данные), выберите Filters (Фильтры), а затем Advanced Filters (Расширенные фильтры).

Теперь необходимо установить флажок Unique records only (Только уникальные записи).

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

Вариант 3: Замена

Этот метод удобно применять, когда необходимо найти повторяющиеся строки в небольших таблицах. Мы будем использовать инструмент Find and Replace (Поиск и замена), который встроен во все продукты Microsoft Office. Для начала необходимо открыть таблицу Excel, с которой планируется работать.

Открыв таблицу, выберите ячейку, содержимое которой требуется найти и заменить, и скопируйте ее. Для этого выделите нужную ячейку и нажмите сочетание клавиш Ctrl+C .

Скопировав слово, которое необходимо найти, воспользуйтесь сочетанием Ctrl+H , чтобы вызвать диалоговое окно Find and Replace (Поиск и замена). Вставьте скопированное слово с поле Найти , нажав Ctrl+V .

Нажмите кнопку Options (Параметры), чтобы открыть дополнительный список опций. Установите флажок у пункта Match entire cell contents (Ячейка целиком). Это необходимо сделать, поскольку в некоторых ячейках искомые слова находятся вместе с другими словами. Если не выбрать эту опцию, можно непреднамеренно удалить ячейки, которые требуется оставить. Убедитесь, что все остальные настройки соответствуют указанным на рисунке ниже.

Теперь необходимо ввести значение в поле Replace with (Заменить на). В данном примере мы воспользуемся цифрой 1 . Введя нужное значение, нажмите Replace All (Заменить все).

Можно заметить, что все значения duplicate в ячейках таблицы, будут заменены на 1 . Мы использовали значение 1 , так как оно небольшое и выделяется в тексте. Теперь Вы можете визуально определить строки, которые имеют повторяющиеся значения.

Чтобы оставить один из дубликатов, достаточно вставить исходный текст обратно в строку, которая была заменена. В нашем случае мы восстановим значения в 1-й строке таблицы.

Определив строки с повторяющимся содержимым, поочередно выделите их, удерживая клавишу Ctrl .

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

Сделав это, Вы можете заметить, что все оставшиеся строки имеют уникальные значения.