我曾经通过录制,然后找到所需的零件并在代码中使用它们来完成大部分编码。我正在尝试继续进行更好的事情,并简化复制等简单功能。
,但我遇到了一个我似乎不明白的问题:
Sheets("main").Range(Cells(1, 1), Cells(2, 2)).Copy Sheets("Backup").Range(Cells(1, 1), Cells(2, 2))
以错误结尾:运行时间错误1004,应用程序定义或对象定义的错误。
我尝试这样做时没有问题:
Sheets("main").Cells(lastrowMain, lastcolumn).Copy Sheets("Backup").Range("A" + CStr(lastrowBackup + 1))
我认为问题是粘贴到粘贴的位置的大小,所以我只是将它们匹配为相同,但是我仍然遇到相同的错误。
或者我选择各种单元格的方式是错误的,有更好的方法?
这是一个常见的问题,因为您尚未添加对Cells
的表格引用。在这种情况下,将假定活动表,如果不是main
(或Backup
),则您的范围将跨越不同的表格,因此错误。
而不是完全符合这些行:
With Sheets("main")
.Range(.Cells(1, 1), .Cells(2, 2)).Copy Sheets("Backup").Range(Sheets("Backup").Cells(1, 1), Sheets("Backup").Cells(2, 2))
End With