我正在尝试遍历工作表中的行,我想删除一些满足某些条件的行; 例如,删除第 2 列为空白的行;
我试过:
使用 foreach 遍历然后删除,但是当删除行并且行下的范围上移时,某些行将丢失:
foreach(Range row in usedRange)
{
if(Cells[row.Row, 2] is blank)
row.EntireRow.Delete(xlShiftUp);
}
那么,我可以先标记所有需要删除的行,然后再一次性删除所有标记的行吗?
有没有这样的方法或任何其他方法可以满足我的需求?
多谢;
你可以做这样的事情。 这将查看范围 A7:D20 并删除区域中第 2 列为空的所有行
Dim usedRange As Range
Set usedRange = Range("A7:D20")
For i = usedRange.Rows.Count To 1 Step -1
If usedRange(i, 2) = "" Then
usedRange(i, 2).EntireRow.Delete
End If
Next i