Excel完全限定范围(Cells(),Cells())

时间:2014-09-16 14:26:30

标签: vba excel-vba excel

我知道很多人都谈过完全合格的射程。我只是想知道你需要多深才能避免问题。

在示例中,我使用尺寸变量限定了我的工作表。那么是否必须100%可靠,才能在括号范围内进一步获得资格?

dim myWS as Worksheet
set myWS = Thisworkbook.Activesheet

- 使用方法A?

myWS.Range(Cells(1,5), Cells(500,20)).ClearContents

- 或方法B?

myWS.Range(myWS.Cells(1,5), myWS.Cells(500,20)).ClearContents

Range括号内的“Cells”是否默认引用调用它的myWS.Range或“Cells”默认引用活动工作表?

如果将myWS设置为活动工作表以外的工作表,我是否会从Cell获得意外结果?

这并不难,但如果你说第二种方式更值得信赖,我将不得不返回并在很多地方改变它!

1 个答案:

答案 0 :(得分:2)

方法A仅在myWS在被调用时处于活动状态时才有效。方法B更健壮,方法C也是如此:

myWS.Range(Cells(1,5).Address, Cells(500,20).Address).ClearContents 

或方法D:

myWS.Range("E1:T500")