我的工作簿中有 3 张工作表。
表 1 - 源数据表 2 和 3 - 我想根据数据的大小将数据从Sheet 1
这里粘贴A1
到列的末尾Sheet 1
。
以下 VBA 脚本将当前工作表 (Sheet 1) 的内容复制到列末尾,然后将其粘贴到Sheet 2
和Sheet 3
。
Range(Range("A1"), Range("A1").End(xlToRight)).Copy
Worksheets("Sheet 2").Paste
Worksheets("Sheet 3").Paste
问题是复制的内容将被粘贴到选定单元格的位置,该位置是随机单元格,具体取决于指向的位置。
我希望它被复制到特定位置,A1
直到其他工作表上列的末尾。
所以我改变了语法。不幸的是,以下尝试没有成功并导致错误。
Worksheets("Sheet 2").Range("A1").Paste
错误是:
Run-time error '438':
Object doesn't support this property or method.
这个正确的语法是什么?
更新
我按照建议更改了最后一个代码,但它只是选中了A1:XFD1
。Sheet 2
它没有从中复制内容Sheet 1
Worksheets("Sheet 2").Range("A1").PasteSpecial
答案1
我引用你的问题:
复制的内容将粘贴到选定单元格的位置
这是真实的。
这是随机单元格,具体取决于指向的位置
这不一定是。
只需放在worksheets("Sheet 2").Range("A1").Select
粘贴行之前即可。编辑 - 您可能需要分两部分进行,worksheets("worksheet name").Select
然后Range("A1").select
。