如何复制和粘贴特定范围n次?

时间:2018-04-25 07:16:46

标签: excel vba excel-vba

我最近创建了一个宏按钮,但我在过渡时遇到了困难。 *'x'表示随机值 当前电子表格:

 Col:     A ................. X
 Row 1  x x x x x x x x
     2  x x x x x x x x
     3  x x x x x x x x 
     .   x x x x x x x x 
     .   x x x x x x x x 
     .   x x x x x x x x 
     .   x x x x x x x x
   16  x x x x x x x x
   17  x x x x x x x x
      .  x x x x x x x x
      .  x x x x x x x x
      .  x x x x x x x x 
      .  x x x x x x x x 
   31  x x x x x x x x 

所以基本上在这种情况下,我想复制范围“A2:X16”并将其粘贴15次,紧接在第16行下方。然后,复制原始范围“A17至X31”并将其粘贴另外15次。此过程将继续,直到我指定的所有范围总共被复制了15次。这可能吗?提前谢谢。

1 个答案:

答案 0 :(得分:2)

以下内容将复制您想要的范围,然后检查下一个可用的空行并将值粘贴到那里,它将循环并执行15次:

Sub foo()
Dim ws As Worksheet: Set ws = Sheets("Sheet1")
'declare and set your worksheet, amend as required

ws.Range("A2:X16").Copy

For i = 1 To 15
    NextRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row + 1
    'get the Next Empty Row
    ws.Range("A" & NextRow).PasteSpecial xlPasteAll 'paste 
Next i
End Sub