在一个工作簿中复制多个单元格范围并粘贴到另一个工作簿中的两个不同工作表

时间:2016-01-26 19:41:04

标签: excel vba excel-vba

我有一个工作簿,我想复制两个不同的选项并粘贴到另一个工作簿中的两个不同的工作表中。

我想多次运行它并希望它将所选范围粘贴到后续的BLANK行中,而不是覆盖以前粘贴的行。这就是我所拥有的:

    Range("BJ8:EB8").Copy
    Windows("LPI Table 2016.xlsx").Activate
    Sheets("LPI 2.4").Select
    Range("A3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
         :=False, Transpose:=False
    Windows("NEW LPI-Sheet_011915.xlsm").Activate
    Range("BJ12:EB12").Copy
    Windows("LPI Table 2016.xlsx").Activate
    Sheets("LPI 2.6").Select
    Range("A3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

End Sub

1 个答案:

答案 0 :(得分:1)

而不是

`Range("A3").Select`

使用

`Cells(Rows.Count, 1).End(xlUp).Offset(1,0).Select`

另外,尽量不要使用Select语句。它减慢了你的宏,通常没有必要。你可以改写这个

Sheets("LPI 2.4").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

并将其全部放在一行

Sheets("LPI 2.4").Cells(Rows.Count, 1).End(xlUp).Offset(1,0).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False