Excel将一系列单元格复制到另一个工作簿

时间:2018-12-05 12:28:16

标签: excel vba excel-vba

在第一个工作簿中,筛选完所有单元格后,必须将前20行复制到另一个工作簿中。

这是我的代码,但我不知道如何复制前20行:

Range("AN2:AP1000").Select
Range("A2:A1000").Select
Selection.Copy
Windows("Workbook2").Activate
Range("O15:Q35").Select
Range("N15:N35").Select
ActiveSheet.Paste

我有2个范围,因为要复制的数据位于2个不同的列上。 这是要复制的表(数据的前20行): table

1 个答案:

答案 0 :(得分:0)

请勿使用选择或激活-而是使用范围变量

dim Source1 as range
dim source2 as range
dim dest1 as range
dim dest2 as range
set source1 = Range("A2:A1000").SpecialCells(xlCellTypeVisible)
set source2 = Range("AN2:AP1000").SpecialCells(xlCellTypeVisible)
with Workbooks("Workbook2").worksheets(1)  'i assume first sheet
     set dest1 = .Range("O15") 
     set dest2 = .Range("N15")
end with
source1.copy dest1
source2.copy dest2