Страницы: 1
RSS
Как добавить строку c шагом -1 в заданном диапозоне, VBA
 
Доброго дня,

Подскажите пожалуйста как добавить строку c шагом Step -1  в конкретном диапозоне (для всего диапозона B11:N161). Фаил прикреплен.
Вот таким кодом я пользуюсь что-бы добавить строку, только для всего листа.

Спасибо большое!
Код
Sub add_row()
Application.ScreenUpdating = 0
    Dim i As Long
    For i = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row To 2 Step -1
    Rows(i).Insert
    Next
Application.ScreenUpdating = 1
End Sub
 
Alex D, Если правильно вас понял замените
Код
For i = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row To 2 Step -1

на

Код
For i = 161 To 11 Step -1

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

 
Цитата
casag написал:
Alex D , Если правильно вас понял замените
Вы поняли верно
Поменял - работает.
Спасибо!
 
Цитата
Alex D написал:
а если нужно вставлять строки, только перед заполненными строками, то сначала определите последнюю заполненную строку.
Если не трудно, покажите как в таком случае, Вы находите последнию заполненую строку?
 
Alex D, не трудно :)
Код
Sub add_row()
Application.ScreenUpdating = 0
    Dim i As Long, lr As Long
    lr = Cells(Rows.Count, "D").End(xlUp).Row 'определяется последняя строка по столбцу "D"
    For i = lr To 11 Step -1 'цикл от последней строки до 11
    Rows(i).Insert 'вставляет строку перед строкой
    'Rows(i + 1).Insert 'вставляет строку ниже строки (если нужно)
    Next
Application.ScreenUpdating = 1
End Sub
Изменено: casag - 23.08.2019 16:18:18
 
Цитата
casag написал:
Alex D , не трудно  
Идеально!
Спасибо Вам большое!
Страницы: 1
Наверх