用于自动复制的Excel for循环

用于自动复制的Excel for循环,excel,vba,loops,Excel,Vba,Loops,我正在尝试创建一个循环,以将具有特定间隔的特定选择复制到新范围或新范围 这是我的代码: Sub test() Dim i As Long Dim c As Integer c = 0 For i = 1 To 119 Step 3 c = c + i + 120 Range(Cells(i, 1), Cells(i, 4)).Copy Range("A(c)") Next i End Sub 但它不起作用。有人能帮我吗 谢谢 非常感谢。我用这种方

我正在尝试创建一个循环,以将具有特定间隔的特定选择复制到新范围或新范围

这是我的代码:

Sub test()
Dim i As Long
Dim c As Integer
c = 0
    For i = 1 To 119 Step 3
        c = c + i + 120
        Range(Cells(i, 1), Cells(i, 4)).Copy Range("A(c)")
    Next i
End Sub
但它不起作用。有人能帮我吗


谢谢

非常感谢。我用这种方法解决了它,使它更紧凑:

Sub test()
Dim i As Long
Dim c As Integer
Dim c2 As Integer
c = 0
c2 = 0
    For i = 1 To 119 Step 3
        c2 = c2 + 1
        c = c2 + 120
        Range(Cells(i, 1), Cells(i, 4)).Copy Cells(c, 1)
    Next i
End Sub

如果只想选择要复制的范围而不实际复制任何内容:

Sub test()
Dim i As Long
Dim rngCopy As Range    

    For i = 1 To 119 Step 3            
        If rngCopy Is Nothing Then
            Set rngCopy = Range(Cells(i, 1), Cells(i, 4))
        Else
            Set rngCopy = Application.Union(rngCopy, _
                          Range(Cells(i, 1), Cells(i, 4)) )
        End If    
    Next i

    rngCopy.Select

End Sub

范围(单元格(i,1),单元格(i,4))。复制单元格(c,1)如何仅为选择创建相同的循环?如果我能在excel工作表上显示此循环的选择,而不显示复制选项,那就太好了。在这种情况下,我必须创建一个范围,该范围每次由循环更新,最后我必须打印该范围?我说得对吗?这很有效。我有个问题,在这种情况下,集合存储每次迭代的范围,对吗?谢谢回答。我不明白其他情况。什么申请,工会怎么办?再次感谢。它将两个(或更多)单独的范围合并,以创建一个包含两个原始范围的新范围。这就是如何使用循环构造范围。