Вставка массива в listobjects (). Listcolums (). Databodyrange - PullRequest
0 голосов
/ 03 сентября 2018

Быстрый способ передачи данных между таблицами Excel заключается в считывании данных в массив путем циклического перемещения по исходной таблице, а затем вставки их в целевую таблицу с помощью одной команды. Это прекрасно работает для таблицы databodyrange; listobjects (). databodyrange = aTransfer. Но при попытке сделать то же самое для списка столбцов; listobjects (). listcolumns (). databodyrange = aTransfer, первое число в столбце повторяется до конца столбца.

Это показано в следующем примере: Перенос данных между таблицами

Есть ли способ обойти это?

1 Ответ

0 голосов
/ 03 сентября 2018

Вам нужно будет переместить одномерный горизонтальный массив в вертикальный , используя метод Transpose объекта Application. Вот пример ...

Worksheets("Sheet1").ListObjects("Table1").ListColumns(1).DataBodyRange.Value = application.transpose(aTransfer)
...