Как скопировать и вставить определенный диапазон n раз? - PullRequest
0 голосов
/ 25 апреля 2018

Я недавно создал кнопку макроса, но пока что сталкиваюсь с трудностями. * «х» представляет случайное значение Текущая таблица:

 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 голосов
/ 25 апреля 2018

Следующая команда скопирует желаемый диапазон, затем проверит наличие следующей доступной пустой строки и вставит туда значения, она зациклится и сделает это 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...