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

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

Следующий макрос DeleteRows удалит все X строк с вашего листа. Все, что вам нужно сделать, это выбрать строки, к которым вы хотите применить его.

Макрос, как написано, удалит каждую вторую строку. Итак, если вы хотите удалить первую, третью, пятую и седьмую строки, начиная со строки 10, вы должны выбрать строки с 10 по 16, а затем запустить этот макрос. В результате удаляются строки 10 (первая строка), 12 (третья строка), 14 (пятая строка) и 16 (седьмая строка).

Sub DeleteRows()

Dim iStart As Integer     Dim iEnd As Integer     Dim iCount As Integer     Dim iStep As Integer     Dim J As Integer

iStep = 2    'Delete every 2nd row     Application.ScreenUpdating = False     iStart = 1     iCount = Selection.Rows.Count     'Find ending row to start deleting     For J = iStart To iCount Step iStep         iEnd = J     Next

Do While iEnd >= iStart         Selection.Rows(iEnd).Delete         iEnd = iEnd — iStep     Loop     Application.ScreenUpdating = True End Sub

Если вы хотите удалить несколько других строк, просто измените настройку переменной iStep. Например, если вы хотите удалить каждую пятую строку, измените iStep с 2 на 5. (Вам нужно сделать только одно изменение в объявлении iStep = 2.)

_Примечание: _

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

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (3592) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Deleting_Every_X_Rows [Удаление каждых X строк].