0

请你能帮我解决一个看似简单的问题吗?请注意,这个问题几乎是最后的手段,因为我已经尝试了所有常用网站来找到答案,但令人沮丧的是,没有成功。

我正在使用 Excel vba。我想将工作表中的一些值复制到同一工作簿中的另一个工作表中。

我生成的代码行如下:

Range(Cells(1, 4), Cells(1, 6)) = Worksheets("Summary Data").Range(Cells(1, 4), Cells(1, 6))

这行代码会产生“运行时错误 1004”。

如果我运行以下代码行,它运行良好:

Range(Cells(1, 4), Cells(1, 6)) = Worksheets("Summary Data").Cells(1, 4)

但是,我想将工作表“摘要数据”上的范围复制到另一个工作表中。

请问有人可以通过提供上述错误的解释和/或解决方案来帮助我管理我的血压吗?

4

2 回答 2

0

老问题,但是...

也许您需要限定您的陈述:

Range(Cells(1, 4), Cells(1, 6)).Value = _
  Worksheets("Summary Data").Range(Cells(1, 4), Cells(1, 6)).value

或更全面地限定您的范围:

Dim ws1 As Worksheet, ws2 As Worksheet
Set ws1 = ActiveSheet
Set ws2 = Worksheets("Summary Data")

ws1.Range(ws1.Cells(1,4), ws1.Cells(1,6)).Value = _
  ws2.Range(ws2.Cells(1,4), ws2.Cells(1,6)).Value
于 2012-10-30T13:32:10.200 回答
0

我会告诉简单的解决方案。开始录制宏并将要复制的单元格复制到另一张工作表并粘贴到那里并停止录制宏。然后转到Visual Basic 编辑器并查看宏代码。

于 2012-04-27T09:08:15.083 回答