将数组插入到listobjects()。listcolums()。databodyrange

时间:2018-09-03 18:16:09

标签: arrays excel-vba

在Excel表之间传输数据的一种快速方法是通过循环遍历源表,然后通过一个命令将它们插入目标表中,从而将数据读入数组。这对于表databodyrange很好; listobjects()。databodyrange = aTransfer。但是当尝试对列表列执行相同操作时; listobjects()。listcolumns()。databodyrange = aTransfer,该列中的第一个数字一直重复到该列的末尾。

在以下示例中对此进行了演示:Transfering data between tables

有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您需要使用Application对象的Transpose方法将一维水平数组转置为 垂直 。这是一个例子...

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