使用VBA偏移单个复制的列

时间:2017-09-20 14:04:40

标签: excel-vba vba excel

我正在从一个工作簿复制一组单独的列并将它们粘贴到另一个工作簿。我想要将我的数据复制到哪一行(例如,向下9行)。我试过使用该属性:

def compute_default_value(self):
   return dict(self._fields['field'].selection).get(self.type)

但我不知道如何将其添加到现有代码中。

.Offset()

1 个答案:

答案 0 :(得分:0)

正如斯科特和米奇指出的那样,你需要有一个选定的范围,其中包含一个已定义的开始和结束行/列。

您可以使用一些动态代码(每个源表/列)执行此操作,代码类似于:

Dim LR as Long, col1 as String
col1 = "C" 'Change to whatever column you want to focus
With Sheets("NAME1")
    LR = .Cells(.Rows.Count, col1).End(xlUp).Row
End With

然后,您可以使用现在定义的LR(LR =最后一行)移动数据:

With Sheets("NAME1")
    .Range( .Cells(1, col1), .Cells(LR, col1)).Copy Sheets("NAME2").Cells(9,"D")
End With

只需在粘贴到目标范围时指定左上角的单元格。