【发布时间】:2011-07-13 17:34:48
【问题描述】:
下面是我的代码。我试图通过一些行,如果那里有某些数据,然后删除这些行,但是我目前的编码方式,每当我删除一行时,我都会跳过它下面的行。我将范围更改为将高编号行变为低编号行,但我的宏仍然从顶部开始并向下移动。我想如果我让它向上移动,删除不会导致它跳过下一个项目。我怎样才能让它从列表的底部向上移动,或者有什么更好的方法呢? 我的代码如下:
Dim lLastRow As Long
Dim num As Integer
Dim name As String
Dim rCell As Range
Dim afCell As Range
Dim rRng As Range
Dim affectedRng As Range
Windows("Most Affected Customer Info.xls").Activate
Worksheets("Sheet 1").Activate
Cells(1, 1).Select
Selection.End(xlDown).Select
lLastRow = ActiveCell.Row
Set affectedRng = Range("A" & lLastRow & ":A2")
'First remove resolved entries
For Each afCell In affectedRng
If (afCell.Offset(0, 4).Value = "resolved" Or afCell.Offset(0, 4).Value _ = "Resolved" Or afCell.Offset(0, 2).Value = "Resolved" Or afCell.Offset(0, 2).Value = _ "resolved") Then
afCell.EntireRow.Delete
End If
Next afCell
【问题讨论】: