ActiveSheet.Range(Cells(x,y),Cells(w,z))。选择不工作

时间:2015-05-20 18:59:11

标签: excel vba excel-vba

有人能告诉我为什么当我提到特定范围时,它可以正常工作:

ActiveSheet.Range("A1:D3").Select

ActiveSheet.Range(Cells(1, 1), Cells(3, 4)).Select

不工作?

1 个答案:

答案 0 :(得分:1)

我怀疑您的代码位于不同工作表的工作表代码模块中,因此不合格的Cells调用会引用那个表,而不是活动表。您应始终使用Range对象限定所有 CellsWorksheet来电:

ActiveSheet.Range(ActiveSheet.Cells(1, 1), ActiveSheet.Cells(3, 4)).Select

这也可以避免重复目标工作表的几次: (见https://msdn.microsoft.com/EN-US/library/office/gg264723.aspx

With ActiveSheet
    .Range(.Cells(1, 1), .Cells(3, 4)).Select
End With