我有一个工作簿称为压片机生产报告的操作员填写。通常他们点击"轮班结束"按钮,它保存工作簿的班次和日期,然后重新打开空白的压片机生产报告。有时我需要从工作簿之间传输数据,所以我让它传输数据到重新打开的工作簿。以下是传输数据的代码。
Sub Transfer_1()
Range("G5").MergeArea.Copy
**Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("G5").PasteSpecial xlPasteValues**
Range("G7").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("G7").PasteSpecial xlPasteValues
Range("H5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("H5").PasteSpecial xlPasteValues
Range("I5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("I5").PasteSpecial xlPasteValues
Range("K5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("K5").PasteSpecial xlPasteValues
Range("L5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("L5").PasteSpecial xlPasteValues
Range("M5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("M5").PasteSpecial xlPasteValues
Range("N5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("N5").PasteSpecial xlPasteValues
Range("Q5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("Q5").PasteSpecial xlPasteValues
Range("AB5").MergeArea.Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("R5").PasteSpecial xlPasteValues
Range("S5").MergeArea.Copy
Range("R5").PasteSpecial xlPasteValues
Range("AC5").Copy
Workbooks("Sheeter Production Report").Worksheets("Production Report").Range("X2").PasteSpecial xlPasteValues
我不断收到运行时错误"9"下标超出范围。
它完全正确地重命名工作簿,打开Sheeter生产报告工作簿,没有任何问题,但当它复制和粘贴数据时,它会踢出上述错误。我用**标记了该行
我创建了一个名为Book1/Sheet1的空白工作簿,并将其与第一行中的Sheeter Production Report/Production Report交换,使用F5时,它将转移。但当它转到下一行时,它再次弹出错误。上周,它工作得非常好。我不知道可能发生了什么变化。
任何帮助都将不胜感激。
1条答案
按热度按时间flseospp1#
这对我很有效:
我认为
With
可能是多余的,但是当我认为它更复杂时,我已经添加了它。如果你遇到问题就告诉我。