VBA Excel – 我可以在ActiveSheet中使用哪些方法/属性

我已经看了MSDN页面 ,也发现这个问题很有帮助,但我想知道如何ActiveSheet的行为。 它是否像一个工作表对象? 听起来像它只是返回或引用一个工作表对象。 普通的Worksheet方法和属性是否可以使用它?

我用它从其他来源复制的代码,但我想了解底下发生了什么。

谢谢

奖金问题:如果我有一个sheet2控件,然后将活动工作表设置为sheet1在一个用户窗体中,然后可以将它设置回到sheet2closures用户窗体时? 实质上,我可以更改表单下面的表单来显示/处理表单处于活动状态的数据吗?

它是否像一个工作表对象?

ActiveSheet是“喜欢”一个工作表对象,但他们是不一样的。 ActiveSheet可以是“ 工作表 ”,“ 图表 ”,“ MS Excel 4.0macros表 ”或“ MS Excel 5.0对话框

因此,应该总是避免在使用工作表时使用Activesheet 。 你可能不会和你认为你的工作表一起工作。

普通的Worksheet方法和属性是否可以使用它?

如果ActiveSheet是一个Worksheet那么是的。 例如,下面的工作表适用于工作表,但不适用于“ MS Excel 5.0对话框表

 Debug.Print ActiveSheet.Range("A1").Address 

关于你的奖金问题,是的,你可以设置任何Worksheet到活动Worksheet表,即把它放在前面,前提是Worksheet不隐藏。 否则,你将不得不取消隐藏它,然后激活它。

要使工作表处于活动状态,您可以使用此function

 ThisWorkbook.Sheets("Sheet2").Activate 

简而言之,避免使用ActiveSheet 。 改用对象。 有趣的阅​​读