如何将同一列的值复制到下一列? 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
我正在尝试从同一范围 (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