我想编写一个循环,删除工作表中的整行以清理文件。因此,如果我有第1行到第10行,我想删除第1,3,5,7,9行。
Sub deleteeveryotherrow()
For x = 1 To 10
Rows("x:x").Select
Selection.Delete Shift:=xlUp
x = x + 2
Next x
End Sub
答案 0 :(得分:2)
"x:x"
只是一个文字字符串,因此无法按预期工作。
改为使用Rows(x & ":" & x).Select
。
您还应该考虑从10到1向后运行循环:
For x = 9 To 1 Step -2
否则你会让你的索引纠结在一起。然后,您就可以删除该行x = x + 2
。
答案 1 :(得分:0)
Sub deleteeveryotherrow()
For x = 1 To 100 Step 1
Rows(x & ":" & x).Select
Selection.Delete Shift:=xlUp
Next x
End Sub
这非常有效,谢谢