这些行旨在将一个行单元格的范围从工作簿中的工作表(源)复制到另一个(目标)。
以下代码引发error 1004 - Application-defined or object-defined
:
currBook.Sheets(strNomOnglet).Range(Cells(firstrow, 2), Cells(firstrow, 8)).Copy _Destination:=currBook.Sheets(strOngletCibl).Range("B1:H1")
firstrow variable is a seeking sequence result.
这个是好的但是太静态(不是相对引用):
currBook.Sheets(strNomOnglet).Range("B26:H26").Copy _Destination:=currBook.Sheets(strOngletCibl).Range("B1:H1")
我想避免使用循环。
针对该问题的任何提示或解释?
答案 0 :(得分:0)
改为使用这个:
With currBook.Sheets(strNomOnglet)
.Range(.Cells(firstrow, 2), .Cells(firstrow, 8)).Copy _
Destination:=currBook.Sheets(strOngletCibl).Range("B1:H1")
End With
请注意,我已将Cells(firstrow, 2)
更改为.Cells(firstrow, 2)
(以完全限定您的单元格,即指定它们属于哪张表格)
此外,如果您只想复制值(没有格式化),最好使用以下代码:
currBook.Sheets(strOngletCibl).Range("B1:H1").Value = _
currBook.Sheets(strNomOnglet).Cells(firstrow, 2).Resize(, 7).Value
其中.Cells(firstrow, 2).Resize(, 7)
是.Range(.Cells(firstrow, 2), .Cells(firstrow, 8))