使用VBA中的单元格/行列引用复制和粘贴数据

时间:2017-01-25 03:02:25

标签: excel vba excel-vba excel-2013

我在使用行列引用复制和粘贴Excel 2013 VBA中的数据时遇到了困难。

这是我的代码片段失败(创建错误消息): "应用程序定义或对象定义错误"

Worksheets("Sheet2").Range(Cells(1, 1), Cells(3, 3)).Copy Worksheets("Sheet1").Range(Cells(1,1))

这是一个可行的替代版本(将范围A1:C3从一个工作表复制到另一个工作表:

Worksheets("Sheet2").Range("A1:C3").Copy Worksheets("Sheet1").Range("A1")

为什么我要注意行/列方法?因为我希望能够复制和粘贴所有行和列引用都是变量的范围。这是我个人的知识。

提前致谢!

1 个答案:

答案 0 :(得分:1)

Cells本身会引用ActiveSheet,你应该注意你的变量资格。此外,我还使用CodeNames Worksheet.CodeName作为防范用户更改工作表名称的工作表。

我相信你想要的是......

Option Explicit

Sub Test()

   Sheet2.Range(Sheet2.Cells(1, 1), Sheet2.Cells(3, 3)).Copy Sheet1.Cells(1, 1)

End Sub