首页 > 解决方案 > 在 VBA 中使用循环删除范围并在每次迭代时更改范围

问题描述

我想在 Excel (A50:B80) 中选择一个范围并删除其所有内容。我将保留两行,然后我希望下一个循环迭代从 (A52:B82) 开始,依此类推。这是我到目前为止所拥有的:

Sub Macro2() 
 Dim i As Integer
 Dim num As Integer
 num = 50
    
 Dim num_2 As Integer
 num_2 = 80
    
 For i = 1 To 2:
     Set Range1 = Range("A" & num)
     Set Range2 = Range("B" & num_2)
     Range(Range1, Range2).Select
     Selection.delete Shift:=x1Up
     num = num + 2
     num_2 = num + 2
 Next i
End Sub

但我不断收到“运行时错误 '1004:Range 类的删除方法失败。

任何帮助,将不胜感激!

标签: excelvbaloopsrange

解决方案


这写错了:

Selection.delete Shift:=x1Up

尝试将其替换为:

Selection.Delete Shift:=xlUp

推荐阅读