2012-05-02 5 views
3

Я пытаюсь удалить/скрыть ячейки, значения которых равны нулю (0).Удалить ячейки в Excel, которые имеют нулевые значения

Sub HideRows() 
    Dim cell As Range, rng As Range 
    Cells.Rows.Hidden = False 

    On Error Resume Next 
    Set rng = Columns(5).SpecialCells(xlConstants, xlNumbers) 
    On Error GoTo 0 

    For Each cell In rng 
     If cell.Value = 0 Then 
      cell.EntireRow.Hidden = True 
     End If 
    Next 

End Sub 

Код удаляет всю строку. Я хочу удалить описание значения и значения.

+1

Вы можете очистить содержимое ячеек, которые имеют 0 - но вы можете скрыть цельные строк или столбцов, а не отдельных ячеек. Вы хотите удалить содержимое ячеек и любые комментарии – brettdj

+0

@brettdj Я хочу удалить ячейку, которая имеет нулевое значение и ячейку перед ней. – sean

ответ

3

Этот код будет быстро очистить (стирают) значения и комментарии из ячеек в столбце Е, которые имеют значение 0

Sub Testme() 
     Dim rng1 As Range 
Set rng1 = Columns(5) 
With rng1 
    .AutoFilter 1, "0" 
    With rng1.Offset 
     .ClearContents 
     .ClearComments 
    End With 
    With rng1.Offset(0, -1) 
     .ClearContents 
     .ClearComments 
    End With 
End With 
End Sub 
+0

+ 1 Автофильтр - это путь! Возможно, вы захотите немного его отредактировать, поскольку пользователь хочет очистить эту ячейку и ячейку до нее. '@brettdj Я хочу удалить ячейку с нулевым значением и ячейкой до нее. –

+0

Я пробовал это, но ничего не произошло. – sean

+0

@Sean Что вы подразумеваете под 'ячейкой перед этим' Горизонтально или вертикально? –

Смежные вопросы