Объединить диапазоны в один столбец - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть следующий скрипт, копирующий диапазон «F30: F37», «G30: G37» со страницы 1. Я пытаюсь выбрать оба диапазона в Sheet2, начиная с ROW G101.Однако только данные листа 1 «G30: G37» копируются в лист 2, строка G101.В чем может быть проблема, не могли бы вы упростить мой сбор данных?Ниже перечислены макросы:

Dim LastRow As Long
Dim SHEET2 As Worksheet


Set Results = Sheets("SHEET2")
LastRow = Results.Cells(Results.Rows.Count, "Z").End(xlUp).Row


Range("F30:F37").Copy
Results.Range("G" & LastRow + 101).PasteSpecial xlPasteValues
Range("G30:G37").Copy
Results.Range("G" & LastRow + 101).PasteSpecial xlPasteValues


Application.DataEntryMode = False
End Sub

Вот как отображается столбец со строками. Обратите внимание, что строка G не имеет заголовка:enter image description here

Это будет мой результат:

Мой результат будет выглядеть как второе изображение, лист 2

1 Ответ

0 голосов
/ 11 апреля 2019

Прежде всего, Results - это переменная, которая должна быть в вашем Dim выражении, а не "Sheet2".Во-вторых, вы вставляете поверх первой пасты.Если вы хотите, чтобы строка 101 была первой, вставьте строку 101. Затем найдите последнюю строку и вставьте информацию ниже.И, наконец, вы хотите, чтобы Application.CutCopyMode вытащил вас из копии / вставки.

Sub CopyData()

     Dim LastRow As Long
     Dim Results As Worksheet

     Set Results = Sheets("SHEET2")



     Range("F30:F37").Copy
     Results.Range("G101").PasteSpecial xlPasteValues
     LastRow = Results.Cells(Results.Rows.Count, "G").End(xlUp).Row
     Range("G30:G37").Copy
     Results.Range("G" & LastRow).PasteSpecial xlPasteValues


     Application.CutCopyMode = False

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...