Удаление всех остальных строк на листе Excel
Сводка
Эта статья содержит пример макроса Microsoft Visual Basic для приложений, который можно использовать для удаления всех остальных строк в выбранном диапазоне на листе Microsoft Excel.
Дополнительная информация
Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена. Чтобы использовать следующий макрос, настройте книгу Excel следующим образом:
Создайте новую книгу Microsoft Excel.
На новом листе в диапазоне A1:A9 введите числа от 1 до 5, пропуская строки, как показано в следующем примере:
A1: 1 A2: A3: 2 A4: A5: 3 A6: A7: 4 A8: A9: 5
В меню Сервис выберите Макрос и выберите Редактор Visual Basic.
Примечание В Microsoft Office Excel 2007 и более поздних версиях щелкните Visual Basic в группе Код на вкладке Разработчик .
В меню Вставка выберите Модуль.
В новом модуле введите следующий макрос:
Sub Delete_Every_Other_Row()
' Dimension variables.
Y = False ' Change this to True if you want to
' delete rows 1, 3, 5, and so on.
I = 1
Set xRng = Selection
' Loop once for every row in the selection.
For xCounter = 1 To xRng.Rows.Count
' If Y is True, then...
If Y = True Then
' ...delete an entire row of cells.
xRng.Cells(I).EntireRow.Delete
' Otherwise...
Else
' ...increment I by one so we can cycle through range.
I = I + 1
End If
' If Y is True, make it False; if Y is False, make it True.
Y = Not Y
Next xCounter
End Sub
Перейдите на лист, содержащий данные, а затем выберите диапазон A1:A9.
Чтобы запустить макрос, в меню Сервис наведите указатель мыши на пункт Макрос, а затем выберите Пункт Макросы.
Примечание.
- В Excel 2007 и более поздних версиях щелкните Макросы в группе Код на вкладке Разработчик .
- Чтобы отобразить вкладку Разработчик на ленте, нажмите кнопку Microsoft Office, выберите пункт Параметры Excel, выберите категорию Популярные, выберите вкладку Показать разработчик в поле Лента проверка, а затем нажмите кнопку ОК.
Выберите макрос Delete_Every_Other_Row и нажмите кнопку Выполнить.
Этот макрос удалит все остальные строки, начиная со второй строки выделенного фрагмента.
Примечание.
Если у вас есть список данных, содержащий несколько столбцов, выберите только первый столбец данных, а затем запустите макрос.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по