KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как удалить дубликаты, но оставить пустые строки в Excel?

АвторСуньДата изменения

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

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

Удалить дубликаты сохранить пустые ячейки с помощью формулы и Удалить дубликаты

Выбрать и выделить дубликаты с Выбрать дубликаты/уникальные ячейки Хорошая идея3

Макрос VBA: Удалить дубликаты, но сохранить Пустые строки автоматически

Формула Excel/расширенный фильтр: извлечение уникальных значений с сохранением Пустые строки


Удалить дубликаты сохранить пустые ячейки с помощью формулы и Удалить дубликаты

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

Шаг 1.В In an adjacent column (for example, if your data starts in A1, start in B1) введите следующую формулу для пометки Пустые строки:

=IF(LEN(TRIM(A1))=0,ROW(),"")

Эта формула проверяет, пуста ли ячейка A1 или содержит только пробелы. Если да — отображается номер строки, в противном случае ячейка остаётся пустой. Протяните формулу вниз по всем записям списка, чтобы пометить каждую пустую строку.
Снимок экрана с формулой, используемой для определения пустых строк в Excel

Примечание:Если ваши данные охватывают несколько столбцов, скорректируйте ссылку (например, используйте)A1 или B1 по необходимости). Функция СЖПРОБЕЛЫ (TRIM) гарантирует, что ячейки, содержащие только пробелы, также будут считаться пустыми.

Шаг 2. Выделите как исходный столбец данных, так и новый вспомогательный столбец. Затем перейдите в меню Данные > Удалить дубликаты. В появившемся диалоговом окне отметьте только флажок для исходного столбца (а не для вспомогательного), чтобы дубликаты определялись на основе целевых данных.
Снимок экрана диалогового окна «Удаление дубликатов»
Снимок экрана диалогового окна «Удаление дубликатов»

Совет: Убедитесь, что при выделении данных включён вспомогательный столбец, но в качестве ключевого для удаления дубликатов используйте именно исходный столбец данных. Это предотвратит случайное удаление пустых строк, помеченных во вспомогательном столбце.

Шаг 3. Появится уведомление с указанием количества удалённых дублирующихся значений. Нажмите ОК, чтобы подтвердить и закрыть сообщение.
Снимок экрана уведомления об удалении дубликатов в Excel

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

Применимые сценарии: Этот метод идеально подходит, если вы хотите использовать только стандартные функции Excel и ваши данные имеют простую структуру. Однако он не полностью автоматизирован при частом обновлении данных — вам придётся повторять все шаги вручную. Кроме того, обязательно создайте резервную копию данных перед удалением дубликатов: после сохранения и закрытия файла отменить эту операцию уже не получится.

Устранение неполадок: Если пустые строки всё ещё удаляются, дважды проверьте, правильно ли вспомогательная формула помечает все пустые строки, и убедитесь, что в диалоговом окне «Удалить дубликаты» в качестве ключевого столбца используется только основной.


Выбрать и выделить дубликаты с Выбрать дубликаты/уникальные ячейки

Утилита Выбрать дубликаты/уникальные ячейки от Kutools для Excel особенно полезна для визуального выявления дублирующихся записей до их удаления — при этом пустые строки по умолчанию сохраняются. Это решение идеально подходит, если вы предпочитаете вручную проверять дубликаты перед удалением или просто хотите выделить их для последующих действий.

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

1.Выделите диапазон, содержащий ваши данные (включая пустые строки), затем нажмите Kutools > Выделить > Выбрать дубликаты/уникальные ячейки.
Снимок экрана меню Kutools «Выделить повторяющиеся и уникальные ячейки» в Excel

2. В диалоговом окне Выбрать дубликаты/уникальные ячейки выберите правило Дубликаты (кроме первого) в разделе «Правило». Вы также можете установить флажки Заполнить цвет фона и Заполнить цвет шрифта, чтобы автоматически выделять дубликаты выбранными цветами.
Снимок экрана диалогового окна «Выделить повторяющиеся и уникальные ячейки»

Совет: Если вы хотите выделить все дублирующиеся строки, выберите весь диапазон данных, а не только один столбец, и примените утилиту соответствующим образом.

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

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

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

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

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

Демонстрация: Выбрать дубликаты/уникальные ячейки с использованием Kutools для Excel

 
Kutools для Excel: Более 300 удобных инструментов всегда под рукой! Воспользуйтесь функциями на базе ИИ для более умной и быстрой работы!Скачать сейчас!

Макрос VBA: Удалить дубликаты, но сохранить Пустые строки автоматически

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

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

1. Перейдите в меню Разработчик > Visual Basic. В редакторе VBA выберите Вставка > Модуль, затем вставьте приведённый ниже код в новое окно модуля:

Sub RemoveDuplicatesKeepBlankRows()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim dict As Object
    Dim cell As Range
    Dim checkRange As Range
    Dim i As Long
    
    Set ws = ActiveSheet
    Set dict = CreateObject("Scripting.Dictionary")
    
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    Set checkRange = ws.Range("A1:A" & lastRow)
    
    Application.ScreenUpdating = False
    
    For i = lastRow To 1 Step -1
        Set cell = ws.Cells(i, 1)
        
        If Trim(cell.Value) = "" Then
            ' Blank row, do nothing and keep row
        Else
            If dict.Exists(cell.Value) Then
                cell.EntireRow.Delete
            Else
                dict.Add cell.Value, True
            End If
        End If
    Next i
    
    Application.ScreenUpdating = True
End Sub

2. Чтобы запустить код, нажмите кнопку Кнопка «Выполнить» или клавишу F5 при выделенном модуле. Макрос немедленно просканирует ваш первый столбец (A), удаляя дублирующиеся значения, но оставляя все ранее существовавшие пустые строки на их исходных позициях.

Как это работает: Макрос проходит по указанному столбцу снизу вверх, удаляя предыдущие значения, но сохраняя все пустые строки. Он автоматически адаптируется к спискам любой длины, определяя последнюю непустую ячейку.

Параметры и советы:

  • Если ваши данные находятся в другом столбце, измените Cells(i,1) на соответствующий номер столбца (например, 2 для столбца B, 3 для столбца C).
  • Макрос начинает работу с последней строки и движется вверх, предотвращая смещение строк и исключая их влияние на процесс удаления.
  • Любая ячейка, содержащая только пробелы, также будет считаться пустой. Если вы хотите определять только действительно пустые ячейки, замените Trim(cell.Value) = "" на cell.Value = "".

Устранение неполадок: Если макрос работает не так, как ожидалось, проверьте наличие объединённых ячеек, скрытых строк или неожиданных типов данных в целевом столбце.

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


Формула Excel/расширенный фильтр: извлечение уникальных значений с сохранением Пустые строки

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

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

1.Чтобы получить In a new column (for example, B1), используйте эту формулу (предполагая, что ваши исходные данные находятся в диапазоне A1:A100):

=IF(TRIM(A1)="","",IF(COUNTIF(A$1:A1,A1)=1,A1,""))

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

Меры предосторожности: Убедитесь, что в данных отсутствуют скрытые символы или начальные/конечные пробелы, которые могут повлиять на определение уникальности. Функция СЖПРОБЕЛЫ (TRIM) помогает избежать подобных проблем. В старых версиях Excel может потребоваться адаптировать методы или использовать вспомогательные столбцы с ручной фильтрацией.

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


Лучшие инструменты повышения продуктивности в Office

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

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


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

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

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек