Excel宏复制循环

时间:2017-11-02 15:55:17

标签: excel vba excel-vba

我正在尝试创建循环复制粘贴宏。

我要做的是将A8复制到A9,前进7行并将A16复制到A17,前进7行并将A24复制到A25。我需要重复相同的模式到行10,000,否则我会手动编写如下。通常情况下我会用公式来做这个,但是因为那会在工作表上创建一堆循环引用,遗憾的是这不是一个可行的解决方案。

Range("A8").Copy
Range("A9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

Range("A16").Copy
Range("A17").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False     

Range("A24").Copy
Range("A25").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False  

1 个答案:

答案 0 :(得分:2)

直接传输值而不是复制和粘贴速度要快一些。

Sub x()

Dim r As Long

For r = 8 To 10000 Step 8
    Cells(r + 1, 1).Value = Cells(r, 1).Value
Next r

End Sub