下标超出范围的简单复制粘贴 - VBA

时间:2015-02-20 11:54:10

标签: excel-vba vba excel

我制作了一个简单的代码来复制/粘贴不起作用的数据并返回下标超出范围。当然,我无法在互联网上找到解决方案,这就是我需要你帮助的原因。

但是,这段代码可以在另一个具有不同参数的工作簿中使用...

...
wb.Worksheets("Sheet1").Range("A2:P" & lastRowCopy).Copy
activeWB.Worksheets("Sheet1").Range("A" & lastRowPaste).PasteSpecial xlPasteValues 'line where it breaks 'edited
wb.Close SaveChanges:=False

基本上,它打开一个工作簿" wb",复制正确的值(lastRowCopy& lastRowPaste是正确的)并且无法粘贴它,而activeWB也正确设置,因为它在代码之前使用。

我一定错过了什么。 谢谢你的时间。

2 个答案:

答案 0 :(得分:3)

而不是:

Range("A1" & lastRowPaste)

使用:

Range("A" & lastRowPaste)

答案 1 :(得分:1)

我实际上使用了“sheet1”,因为它是已重命名的工作表的“真实”名称。

activeWB.Worksheets("Sheet1")...

将其更改为“可更改”工作表名称。

那么如果我再次更改选项卡的名称,我的脚本将不起作用?

谢谢你。