复制并粘贴基于LastRow的选择

时间:2016-04-27 18:55:43

标签: vba copy-paste

我只是想将一个选项从一个工作表复制并粘贴到另一个主工作表的第一个空白行中。我打算用几个不同的工作表来做这个,但我不明白为什么我一直收到错误信息。

Dim sht1 As Worksheet
Dim sht2 As Worksheet
Dim sht3 As Worksheet
Dim shape As Excel.shape

Set wsmaster = Sheets("Sheet 1")
Set sht2 = Sheets("Sheet 2")
Set sht3 = Sheets("Sheet 3")

LR = wsmaster.Range("A" & Rows.Count).End(xlUp).Row
NR = wsmaster.Range("A" & Rows.Count).End(xlUp).Row + 1

With ThisWorkbook
sht2.Range("A:AI").Copy
wsmaster.Range("A" & NR).PasteSpecial Paste:=pastevalues
End With

2 个答案:

答案 0 :(得分:0)

我看到的一个问题是您尝试将一系列列Range("A:AI")复制到单元格Range("A" & NR)中。

您还可以改进代码

  1. 定义wsmaster(我猜测它曾经是sht1
  2. 删除未使用的LR
  3. 删除不需要的With Thisworkbook包装

答案 1 :(得分:0)

我能够弄清楚

LR = Cells(Rows.Count, "A").End(xlUp).Row
NR = Cells(Rows.Count, "A").End(xlUp).Row + 1

sht2.Activate
sht2.Range(Cells(1, 1), Cells(LR, 35)).Copy
sht1.Activate
sht1.Range("A" & NR).PasteSpecial Paste:=xlPasteValues