使用循环删除基于单元格内容的行

我有以下几点:

For i = 1 To 400: If Cells(i, 7) = "Client" Then Cells(i, 1).EntireRow.Delete End If Next i 

问题是,我在两个单元格(10,7)和单元格(11,7)中都有Client 。 一旦行(10)被删除,行(11)成为新行(10),我正在寻找行(11)中的Client ,我不会find它(除非客户端在行(12)从一开始),所以我结束了很多没有删除的行。

在Excel表格中插入或删除行应该从最后一行开始。

 For i = 400 To 1 Step -1 If Cells(i, 7) = "Client" Then Cells(i, 1).EntireRow.Delete Next i 

如果你在if条件下递减variablesi,它是否工作。

例:

 For i = 1 To 400 If Cells(i, 7) = "Client" Then Cells(i, 1).EntireRow.Delete i = i – 1 End If Next i