简单循环通过最后一行定义的指定范围

我正在尝试一个相对简单的代码不起作用。 我试图循环遍历指定的范围,并删除第一列的单元格不等于另一个特定单元格的每一行。 循环应该遍历以单元格“A11”开始的区域,并在LR处结束,反之亦然。 我已经尝试了最后一行以及for循环的许多不同的变体。 我不明白为什么像这样简单的代码将无法正常工作。 代码如下:

Dim sht5 As Worksheet Dim LR As Long Set sht5 = ThisWorkbook.Sheets("Summary") LR = Cells(Rows.Count, 1).End(xlUp).Row With sht5 For i = LR To Range("A11") step -1 If i <> Range("B9").Value Then Rows(i).Delete shift:=xlUp End If Next i End With 

尝试这个:

 Dim sht5 As Worksheet Dim LR As Long Set sht5 = ThisWorkbook.Sheets("Summary") LR = Cells(Rows.Count, 1).End(xlUp).Row With sht5 For I=LR to 11 step -1 if cells(i,1).value<>range("B9").Value Then Rows(i).Delete shift:=xlUp End If Next i End With