.copy _目标语法,范围错误

时间:2018-05-31 12:38:38

标签: excel vba excel-vba

您好我试图使用.copy_目标语法,而不是复制和粘贴VBA循环,我得到了一个"对象范围' _Worksheet失败错误

目前我的代码看起来像这样

For x = 3 To LastHBR
If InStr(1, HBWS.Cells(x, Tickercolumn - 1), "Total") = 0 Then
    HBWS.Range(Cells(x, 1), Cells(x, ClastHBC)).Copy _
    Destination:=MWS.Range(Cells(LastMWSR + x - 2, 3), Cells(LastMWSR + x - 2, CLastMWSC))
End If
Next

知道为什么该范围会引发错误?我已尝试了一些变化但我无法降落。

供参考

HBWS& MWS是定义的工作表

ClastHBC,LastMWSR等...定义了工作表中的最后一行/列。

1 个答案:

答案 0 :(得分:3)

可能是因为您需要使用工作表名称限定所有单元格引用,否则将假定活动工作表。

For x = 3 To LastHBR
    If InStr(1, HBWS.Cells(x, Tickercolumn - 1), "Total") = 0 Then
        HBWS.Range(HBWS.Cells(x, 1), HBWS.Cells(x, ClastHBC)).Copy _
                Destination:=MWS.Range(MWS.Cells(LastMWSR + x - 2, 3), MWS.Cells(LastMWSR + x - 2, CLastMWSC))
    End If
Next