excel-vba 删除循环中的行或列
示例
如果要删除循环中的行(或列),则应始终从范围的末尾开始循环并在每一步中都移回。如果使用代码:
Dim i As Long
With Workbooks("Book1").Worksheets("Sheet1")
For i = 1 To 4
If IsEmpty(.Cells(i, 1)) Then .Rows(i).Delete
Next i
End With您会错过一些行。例如,如果代码删除了第3行,则第4行变为第3行。但是,变量i将更改为4。因此,在这种情况下,代码将丢失一行并检查另一行,而该行以前不在范围内。
正确的代码是
Dim i As Long
With Workbooks("Book1").Worksheets("Sheet1")
For i = 4 To 1 Step -1
If IsEmpty(.Cells(i, 1)) Then .Rows(i).Delete
Next i
End With
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短