将工作表中的列复制到特定的行起始点

目标

将列从一个工作表复制到另一个工作表。

问题和例子

我想复制一列从S1到S2,但我想粘贴从第二行开始。 我可以把它复制到第一个单元格/行,但不是第二个。 代码示例适用于前四行,但是当我将B1更改为B2时,它未能尝试添加一个范围,但无济于事。

码:

Dim s1 As Worksheet, s2 As Worksheet Set s1 = Sheets("BatchData") Set s2 = Sheets("Portal_Aligned") s1.Range("A:A" & LastRow).Copy s2.Range("B1") s1.Range("A:A" & LastRow).Copy s2.Range("B2:B" & LastRow) 

参考:

如何select第二行到最后一行的范围

通过在复制时将行号添加到"A1:A" & lastRow ,并通过将LastRow加1来确保范围的大小相同。

 Dim s1 As Worksheet, s2 As Worksheet Set s1 = Worksheets("BatchData") Set s2 = Worksheets("Portal_Aligned") s1.Range("A1:A" & LastRow).Copy s2.Range("B1") s1.Range("A1:A" & LastRow).Copy s2.Range("B2:B" & (LastRow+1))