你好我是VBA的新手,我正在设计一个程序。它只是选择Sheet2并从单元格A1复制一些东西。然后它从单元格A1中选择Sheet1和偏移量并粘贴到新选择的单元格中。代码如下。ActiveSheet.paste带偏移给出错误
Sub Test()
Worksheets("Sheet2").Activate
ActiveSheet.Range("A1").Activate
Selection.Copy
Worksheets("Sheet1").Activate
ActiveSheet.Range("A1").Activate
ActiveCell.Offset(1, 1).Activate
ActiveSheet.PasteSpecial
End Sub
奇怪的是,如果我更改线路.Offset(1,1)到.Offset(1)程序将正常工作。如果我没有,我会得到运行时错误'1004'应用程序定义或对象定义的错误。
我知道有比使用选择更好的方法,虽然这些对我很有趣,但我也想知道问题的原因。
谢谢你的帮助。
我相信只有Sheet1!B2打算接收Sheet1!A1的内容和格式。除非OP忽略声明[Range.CurrentRegion属性](https://msdn.microsoft.com/en-us/library/office/ff196678.aspx),否则我不相信整个工作表。 – Jeeped