Невозможно скопировать данные из столбца в другую книгу - PullRequest
0 голосов
/ 16 июня 2019

Я очень новичок в VBA, пытаюсь написать некоторый код, который будет копировать все данные, кроме заголовка, из столбца в исходной рабочей книге и вставлять другой столбец с заголовком в другую рабочую книгу.

В настоящее время я могу получить его только для копирования первой ячейки.Я прочитал очень много вещей, но все, что я пытаюсь, приводит к ошибкам

Dim details As Variant, mydata As Workbook

Details = ThisWorkbook.Worksheets("sheet1").Range("N")

Set mydata = Workbooks.Open("C:\desktop\book2.xlsx")

RowCount = mydata.Worksheets("Template").Range("B2").CurrentRegion.Rows.Count
mydata.Worksheets("template").Range("B" & RowCount) = YourRef

1 Ответ

1 голос
/ 16 июня 2019
Details = ThisWorkbook.Worksheets("sheet1").Range("N")

В VBA нет Range("N").Вы можете иметь в виду Range("N:N"), но если вы хотите сместить одну строку вниз, чтобы исключить строку заголовка, вы не можете использовать полную ссылку на столбец.По сути, смещение в одну строку будет пытаться вытолкнуть полный столбец из нижней части листа.

with ThisWorkbook.Worksheets("sheet1")
  Details = .range(.cells(2, "N"), .cells(.rows.count, "N").end(xlup)).value
end with

Выше приведены значения от столбца N, начиная со строки 2 и до последнего значения в столбцеN,

Вам нужно найти последнюю ячейку с данными в столбце B, равном Worksheets("Template"), затем сместить на одну строку вниз и изменить размер цели в соответствии с размером вариантного массива, который вы использовали для сбора исходных данных.

Dim details As Variant, mydata As Workbook

with ThisWorkbook.Worksheets("sheet1")
  Details = .range(.cells(2, "N"), .cells(.rows.count, "N").end(xlup)).value
end with

Set mydata = Workbooks.Open("C:\desktop\book2.xlsx")

with mydata.Worksheets("template")
  .cells(.rows.count, "B").end(xlup).offset(1, 0).resize(ubound(details, 1), ubound(details, 2)) = Details
end with
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...