Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

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

Author Siluvia Last modified

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

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


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

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

Применимые сценарии: Это решение идеально подходит, когда:

  • Все ваши рабочие листы имеют одинаковую структуру (одинаковое количество и расположение строк/столбцов).
  • Вы хотите одновременно удалить одни и те же строки или диапазоны на каждом листе.

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

Чтобы удалить одинаковые строки или диапазоны из нескольких сгруппированных листов, следуйте этим шагам:

1. Щелкните правой кнопкой мыши по любой вкладке листа в вашей текущей книге. Из контекстного меню выберите Выбрать все листы. Это сгруппирует все рабочие листы вместе.

A screenshot of selecting all sheets from the right-click menu on a sheet tab in Excel

Совет: Если вам нужно сгруппировать только определенные листы (не все), удерживайте Ctrl и щелкните по вкладкам нужных листов, затем щелкните правой кнопкой мыши и выберите Группировать листы.

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

Внимание: Отмена (Ctrl+Z) также повлияет на все сгруппированные листы. Перед удалением дважды проверьте, что выбрана правильная область, так как это действие нельзя отменить отдельно на каждом листе.

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

A screenshot of ungrouping sheets after deleting rows or ranges

Практические рекомендации: Перед группировкой рассмотрите возможность сохранения резервной копии вашей книги. Если есть формулы, зависящие от удаляемых строк, проверьте возможные последствия. При разгруппировке убедитесь, что [Группа] исчезла из имени файла в строке заголовка Excel.

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


Удаление одинаковых строк или диапазонов на нескольких листах с использованием кодов VBA

Если вам нужно удалить одинаковые строки или определенные диапазоны на многих рабочих листах, особенно при работе со сложными сценариями или большим количеством листов, использование VBA (Visual Basic for Applications) предоставляет быстрый и гибкий альтернативный метод. VBA позволяет настраивать, обрабатывать пакеты данных и адаптировать код для более сложных критериев или удаления несмежных строк/диапазонов.

Применимые сценарии: Выберите этот метод, когда:

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

На что обратить внимание: Запуск кода VBA напрямую изменит ваши данные. Очень рекомендуется сохранить резервную копию вашей книги перед продолжением. Также убедитесь, что макросы включены в настройках вашего Excel.

Удаление одинаковых строк на нескольких листах

1. Одновременно нажмите Alt + F11, чтобы открыть окно редактора Microsoft Visual Basic for Applications (VBA).

2. В редакторе VBA нажмите Вставить > Модуль, чтобы создать новый модуль. Затем скопируйте и вставьте следующий код VBA в окно кода модуля:

Sub bleh()
    Dim xWs As Worksheet
    Set xWs = ActiveSheet
    ThisWorkbook.Worksheets.Select
    Rows("4:5").Select
    Selection.Delete
    xWs.Select
End Sub

Примечание: В коде VBA 4:5 означает, что строки 4 и 5 будут удалены во всех рабочих листах текущей книги. Если вы хотите удалить другие строки, измените эти значения по мере необходимости. Например, чтобы удалить только строку 2, замените 4:5 на 2:2.

3. Нажмите клавишу F5 для выполнения кода. Указанные строки будут немедленно удалены из каждого листа вашей книги.

Советы и напоминания: Если произошла ошибка (например, попытка удалить строки, которых нет в более коротком листе), убедитесь, что все листы имеют достаточное количество строк. Код будет обрабатывать видимые листы; скрытые или защищенные листы могут вызвать ошибки, если они не обработаны должным образом.

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

Удаление одинаковых диапазонов на нескольких листах

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

Private Sub CommandButton2_Click()
    Dim xRg As Range
    Dim xTxt As String
    Dim xWs As Worksheet
    On Error Resume Next
    Set xWs = ActiveSheet
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Please select the range you want to delete across multiple sheets:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xRg.ClearContents
    ThisWorkbook.Worksheets.Select
    ActiveWindow.SelectedSheets.FillAcrossSheets xRg, xlFillWithContents
    xWs.Select
End Sub

После копирования и вставки кода VBA в модуль нажмите F5 для запуска макроса. В появившемся окне, которое называется "Kutools для Excel", выберите диапазон, который вы хотите удалить на всех листах, затем нажмите OK.

A screenshot of selecting a range to delete across multiple sheets in the Kutools dialog box

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

Практические рекомендации: Этот метод лучше всего подходит, когда вам нужно очистить значения из одного и того же диапазона ячеек на нескольких листах. Обратите внимание, что «удаление» здесь удаляет содержимое ячеек, но не сдвигает ячейки вверх/влево; структурные изменения в вашем листе (например, удаление целых строк/столбцов) не выполняются, если ваш код VBA специально этого не предписывает.

Меры предосторожности: Защитите свои данные, сохранив файл перед выполнением макроса. Если выбранный лист защищен или скрыт, VBA может вернуть ошибку или пропустить этот лист.

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

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

Другие альтернативы
  • Повторное ручное выполнение с помощью Поиск/Замена: Если у вас есть всего несколько листов, вы можете переключаться между ними, выбирать целевые строки или диапазоны и удалять их вручную. Хотя это занимает много времени для большого количества листов, этот метод избегает риска непреднамеренных изменений на всем листе.
  • Использование формул Excel (косвенный метод): В некоторых сложных сценариях можно использовать формулы и вспомогательные столбцы (например, функции INDIRECT, MATCH и IF) для отметки строк для удаления, а затем вручную удалить их после фильтрации. Этот метод больше подходит для маркировки данных, чем для прямого удаления на нескольких листах, но может помочь в визуальной проверке перед ручным удалением.

Связанные статьи:

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

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: 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.

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