使用VBA删除Excel中的行

时间:2017-05-10 14:53:07

标签: excel vba excel-vba

我需要删除某列中具有特定值的行。行数是可变的。我尝试使用以下VBA代码执行此操作:

Sub DeleteRows()

   Dim i, LastRow As Integer
   LastRow = ActiveSheet.Cells(Sheets(1).Rows.Count, 1).End(xlUp).row

   For i = 2 to LastRow

      If Cells(i, 1).Value <> "certain value" Then

         Rows(i).Delete

      End If

   Next i

End Sub

LastRow包含正确的值。当我运行此代码时,没有任何反应。我是VBA的新手,我希望有人可以把我推向正确的方向。提前谢谢。

1 个答案:

答案 0 :(得分:2)

试试这个

Sub DeleteRows()

   Dim i as long, LastRow As long
   with activesheet
   LastRow = .Cells(.Rows.Count, 1).End(xlUp).row

   For i =  LastRow to 2 step -1

      If .Cells(i, 1).Value <> "certain value" Then

         .Rows(i).Delete

      End If

   Next i
   End With
End Sub