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

Copying and Pasting data using Cells / Row Column reference in VBA

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

这是我的代码片段,但失败了(生成错误消息): "Application Defined or object defined error"

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")

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

提前致谢!

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