У меня есть лист в Excel со значениями в некоторых строках столбца B, которые были возвращены как ноль (0), но все еще имеют формулу в ячейке. Я хочу иметь возможность удалять только эти строки с помощью макроса.
1 ответ
0
Как преподаватель программного обеспечения, я удивлен, что вы еще не знали, как это сделать (или этот вопрос просто тест?) Однако следующий код может помочь:
Sub Macro1()
Columns("B:B").Select
Selection.AutoFilter
ActiveSheet.Range("B:B").AutoFilter Field:=1, Criteria1:="0"
Selection.SpecialCells(xlCellTypeVisible).Delete Shift:=xlUp
ActiveSheet.Range("B:B").AutoFilter Field:=1
Selection.AutoFilter
Range("B1").Select
End Sub
но я бы порекомендовал (i) включить рекордер макросов и создать макрос для себя и (ii) быть предельно осторожным с любым макросом, созданным не вами, в частности с макросом «Удалить»!
Обратите внимание, что при этом удаляется Row1
поэтому, возможно, лучше сначала вставить строку вверху, а также удалить строки, в которых "0" не получено из формулы.