Макрос удаления строки по условию
Автор Нася задал вопрос в разделе Другие языки и технологии
Нужен Excel макрос для удаления строк по условию, и получил лучший ответ
Ответ от Евгений[гуру]
Диапазон в экселе понятие почти всеобъемлющее, поэтому макрос работает с крайним правым столбцом ВЫДЕЛЕННОГО диапазона, т. е. достаточно выделить нужные строчки в столбце AV и строчки с нулями будут удалены. По завершению работы выдается шутейное сообщение
Sub Макрос2()
'Dim count, i, x, y As Long
Dim beg As String
Dim nn1, nn2 As Integer
x = Selection.Rows.count 'высота
y = Selection.Columns.count 'ширина
i = 0
nn1 = (InStr(2, ActiveWindow.RangeSelection.Address, "$"))
nn2 = (InStr(2, ActiveWindow.RangeSelection.Address, ":"))
beg = Mid(ActiveWindow.RangeSelection.Address, nn1 + 1, nn2 - nn1 - 1)
With Selection
For i = 1 To x
If .Cells(i, y).Value = 0 And Len(.Cells(i, y).Value) <> 0 Then
count = count + 1
Rows((i - 1) + Trim(Val(beg)).Delete 'Shift:=xlUp
End If
Next i
If count < 1 Then MsgBox ("Эх, даже грохнуть некого... ") Else MsgBox ("Командир, " + Str(count) + " террористов обезврежено! ")
End With
End Sub
Нася
Профи
(915)
Спасибо Вам большое!