复制并粘贴到目的地的variables?

我在这方面的语法不知所措。 我已经search并尝试了大概20种不同的方式来写这个。 任何人都可以帮助我解决我的语法或任何问题是在我的副本的目的地? 这是代码 –

Dim wksMain As Worksheet, wksStats As Worksheet, i As Long, x As Integer Set wksMain = Sheets("Main") Set wksStats = Sheets("Stats") For x = 1 To 3 i = 100000000 wksMain.Range("C3") = i * x wksMain.Range("C4") = i * x + i wksMain.Calculate wksStats.Cells(1, x + 1).Value = wksMain.Cells(8, 4).Value wksMain.Range(Cells(16, 6), Cells(37, 6)).Copy _ Destination:=wksStats.Range(Cells(2, x + 1), Cells(24, x + 1)) Next x 

从评论

我得到的错误是Run-time error '1004' Method 'Range' of object'_Worksheet 'failed'

你没有提到你得到了什么错误,在什么方面,但我可以看到一个问题

 wksMain.Range(Cells(16, 6), Cells(37, 6)).Copy _ Destination:=wksStats.Range(Cells(2, x + 1), Cells(24, x + 1)) 

那是因为你没有完全限定你的细胞对象。

试试这个(未经testing)

 wksMain.Range(wksMain.Cells(16, 6), wksMain.Cells(37, 6)).Copy Destination:= _ wksStats.Range(wksStats.Cells(2, x + 1), wksStats.Cells(24, x + 1)) 

如果您没有限定您的单元格对象,那么它们将始终引用活动工作表。