如何将同一列的值复制到下一列? Excel VBA

How to copy the values from the same column into the next columns? Excel VBA

我正在尝试从同一范围 (G8:G1000) 复制值,然后将这些值粘贴到下一列 (H8:H1000)。但是,然后我想再次复制相同的范围 (G8:G1000),然后将值粘贴到 I8:I1000,并且至少重复 100 次。本质上,G 列中有一个生成随机值的公式,我想将这些唯一值复制到 G 列之后的所有列中。我相信我需要某种 For Next 循环,它会不断选择值从 G 列,然后在先前粘贴到列之后将它们粘贴到下一列,但我几乎没有 VBA 知识来解决这个问题。有人对此有潜在的解决方案吗?感谢任何帮助。

谢谢。

生成列

Option Explicit

Sub generateColumns()
    
    Const rgAddress As String = "G8:G1000"
    Const cCount As Long = 100
    
    Dim rg As Range: Set rg = Range(rgAddress)
    'rg.Formula = "=RANDBETWEEN(1,100)"
    
    Application.ScreenUpdating = False
    
    Dim c As Long
    For c = 1 To cCount
        rg.Offset(, c).Value = rg.Value
    Next c

    Application.ScreenUpdating = True

End Sub