使用VBA将列从一个工作表复制到另一个工作表(带循环)

时间:2017-05-08 20:23:38

标签: excel vba loops

我正在尝试从工作表1中复制列并将它们粘贴到工作表2中,特别是在工作表2上的下一个空列中(这样我就不会覆盖数据)。总的来说,我需要复制第3-81列。

这是我到目前为止的代码:

Dim col As Integer

For i = 3 To 81
Worksheets("Sheet1").Columns(i).Copy Destination:=Sheets("Sheet 2").Column(i).

由于我在复制和粘贴下一个列之前将一个函数应用于每个粘贴的列,因此我不能简单地将目标表示为列(i),因为它只会覆盖最后一列计算数据。

如何更改目的地以便我没有这个问题?

之前我已经多次询问过这个问题但是我找不到我的解决方案,因为我似乎是唯一一个使用循环并将col指定为i的人。

1 个答案:

答案 0 :(得分:1)

Dim i As Long, j As Long

j = 3
For i = 3 To 81
    Worksheets("Sheet1").Columns(i).Copy _
          Destination:=Sheets("Sheet 2").Columns(j)
    j = j + 2
Next i