将数组中的某些列粘贴到1个范围内

时间:2015-07-22 09:18:07

标签: excel-vba vba excel

有没有办法将1个数组中的某些列复制到1个范围内。我的问题是,不仅要省略前几列,这应该很容易,而且中间还有一列。但是,我需要在中间的列进行验证。将数组中的行复制到工作表中时,是否有一种简单的方法可以跳过该列?或者是构建数组时将该列作为第一列还是最后一列的唯一方法?

我现在的代码是:

For row1 = 2 To TotalRowsMerged
    For row = 2 To TotalRowsAgron
        If Cells(row1, 1) = Agron_Array(row, 1) And Cells(row1, 2) = Agron_Array(row, 2) Then
            Range(Cells(row1,11).Address,Cells(row1,23).Address) = Agron_Array(row,

我需要的列是:5到13和15到18,所以总共13,这与我的范围相同。

1 个答案:

答案 0 :(得分:1)

您可以将Index与列索引数组一起使用:

Range(Cells(row1,11).Address,Cells(row1,23).Address) = _
Application.Index(Agron_Array, row, Array(5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18))