Как удалить каждую вторую строку или каждую N-ю строку в Excel

В этом кратком руководстве объясняется, как удалить каждую вторую строку в Excel с помощью фильтрации или кода VBA. Вы также узнаете, как удалить каждую 3-ю, 4-ю или любую другую N-ю строку.

Есть много ситуаций, когда вам может понадобиться удалить альтернативные строки в листах Excel. Например, вы можете сохранить данные за четные недели (строки 2, 4, 6, 8 и т. д.) и переместить все нечетные недели (строки 3, 5, 7 и т. д.) на другой лист.

Как правило, удаление каждой второй строки в Excel сводится к выбору альтернативных строк. Как только строки выбраны, один штрих на Удалить кнопка – это все, что нужно. Далее в этой статье вы узнаете несколько способов быстрого выбора и удаления каждой второй или каждой N-й строки в Excel.

Как удалить каждую вторую строку в Excel путем фильтрации

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

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

    В качестве альтернативы вы можете использовать эту формулу:

    = ОСТАТ (СТРОКА (), 2)

    Логика формулы очень проста: функция СТРОКА возвращает номер текущей строки, функция ОСТАТ делит его на 2 и возвращает остаток, округленный до целого числа.

    В результате у вас есть 0 во всех четных строках (потому что они делятся на 2 без остатка) и 1 во всех нечетных строках:
    Определите каждую вторую строку, используя формулу Mod.

  2. В зависимости от того, хотите ли вы удалить четные или нечетные строки, отфильтруйте единицы или нули.

    Чтобы это сделать, выберите любую ячейку в столбце Helper, перейдите к Данные вкладка > Сортировка и фильтрация группу и нажмите кнопку Фильтр. Стрелки раскрывающегося списка фильтров появятся во всех ячейках заголовка. Вы нажимаете кнопку со стрелкой в ​​столбце Helper и устанавливаете один из флажков:

    • 0 для удаления четных строк
    • 1 для удаления нечетных строк

    В этом примере мы собираемся удалить строки со значениями «0», поэтому мы их фильтруем:
    Отфильтруйте строки с 0 значениями.

  3. Теперь, когда все строки «1» скрыты, выберите все видимые строки «0», щелкните правой кнопкой мыши выделение и нажмите Удалить строку:
    Удалить каждую вторую строку в Excel
  4. Вышеупомянутый шаг оставил вас с пустой таблицей, но не волнуйтесь, строки «1» все еще там. Чтобы снова сделать их видимыми, просто удалите автофильтр, снова нажав кнопку «Фильтр»:
    Удалить фильтр в Excel.
  5. Формула в столбце C пересчитывает оставшиеся строки, но она вам больше не нужна. Теперь вы можете безопасно удалить столбец Helper:
    Формула Mod пересчитывает оставшиеся строки.

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

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

Как удалить чередующиеся строки в Excel с помощью VBA

Если вы не хотите тратить свое время на тривиальную задачу, такую ​​как удаление каждой второй строки в ваших листах Excel, следующий макрос VBA может автоматизировать процесс для вас:

Sub Delete_Alternate_Rows_Excel() Dim SourceRange As Range Set SourceRange = Application.Selection Set SourceRange = Application.InputBox («Диапазон:», «Выберите диапазон», SourceRange.Address, Type: = 8) If SourceRange.Rows.Count >= 2 Затем Dim FirstCell As Range Dim RowIndex As Integer Application.ScreenUpdating = False For RowIndex = SourceRange.Rows.Count – (SourceRange.Rows.Count Mod 2) To 1 Шаг -2 Установите FirstCell = SourceRange.Cells(RowIndex, 1) FirstCell. EntireRow.Delete Next Application.ScreenUpdating = True End If End Sub

Как удалить каждую вторую строку в Excel с помощью макроса

Вставьте макрос на лист обычным способом через редактор Visual Basic:

  1. Нажмите Alt + F11, чтобы открыть окно Visual Basic для приложений.
  2. В верхней строке меню нажмите Вставлять > Модульи вставьте вышеуказанный макрос в Модуль
  3. Нажмите клавишу F5, чтобы запустить макрос.
  4. Появится диалоговое окно, в котором вам будет предложено выбрать диапазон. Выберите свою таблицу и нажмите OK:
    Удалите альтернативные строки в Excel с помощью макроса.

Сделанный! Каждая вторая строка в выбранном диапазоне будет удалена:
Каждая вторая строка в выбранном диапазоне удаляется сразу.

Как удалить каждую N-ю строку в Excel

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

MOD(СТРОКА()-м, н)

Где:

  • м это номер строки первой ячейки с данными минус 1
  • н это N-я строка, которую вы хотите удалить

Допустим, ваши данные начинаются со второй строки, и вы хотите удалить каждую третью строку. Итак, в вашей формуле н равно 3, и м равно 1 (строка 2 минус 1):

= ОСТАТ (СТРОКА () – 1, 3)

Если бы наши данные начинались в строке 3, то м будет равно 2 (строка 3 минус 1) и так далее. Эта коррекция нужна для последовательной нумерации строк, начиная с цифры 1.

Формула делит относительный номер строки на 3 и возвращает остаток после деления. В нашем случае он дает ноль для каждой третьей строки, потому что каждое третье число делится на 3 без остатка (3,6,9 и т. д.):
Формула для определения каждой третьей строки в Excel

И теперь вы выполняете уже знакомые шаги для фильтрации «0» строк:

  1. Выберите любую ячейку в таблице и нажмите кнопку «Фильтр» на Данные
  2. Отфильтруйте столбец «Помощник», чтобы отображались только значения «0».
  3. Выберите все видимые строки «0», щелкните правой кнопкой мыши и выберите Удалить строку из контекстного меню.
  4. Снимите фильтр и удалите столбец Helper.

Каждая третья строка удаляется.

Аналогичным образом вы можете удалить каждую 4-ю, 5-ю или любую другую N-ю строку в Excel.

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

Я благодарю вас за чтение и надеюсь снова увидеть вас в нашем блоге на следующей неделе.

Вас также могут заинтересовать

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *