大家好,今天继续讲解类和类模块应用,今日讲解第5讲内容: 如何构建类的方法。在VBA代码中:属性、方法、事件是我们经常用到的,类也是一样。
这套书写到这里,大家对类已经有所了解,并知道了类属性是如何建立的。我在之前的讲解中讲过,类相当于"魂","魂"体现在属性中,"魂"的"肉身"相当于对象。我们在实际应用的时候也是利用对象的,构建对象的过程就是要把"魂"实例化的过程。如何利用这些对象呢?就是建立类的方法和事件。这讲的内容就是构建类的方法问题。构建类的方法其实就是在类模块中写公共的Sub和Function。
在讲解类的方法构建之前我们先看一下类的应用环境。类可以如同VBA提供给我们的很多标准类一样使用,类方法的应用环境也就是指包括类所在工程的其它成员在内的,可以调用的资源的集合,包含工作簿、工作表、窗体或其它。在类模块中,你可以象在标准模块中一样操作它们,千万不要因为换成了类模块而产生任何疑虑。类模块中的代码也如同标准模块中一样。在写代码时,如果你预期方法环境在运行时可能会有变化,你要事先预知它们并使用恰当的措施,比如:你不能确定运行时活动工作表的名称,你就可以使用ActiveSheet。这和我们在标准模块中的处理方式是一致的。
在类模块中创建方法,可以对工程中其它成员进行操作,和标准模块中的方式一样。下面我们通过一个实例,来演示一下,在类模块中创建方法的过程,刚才已经谈到,这一过程就是写公共的Sub和Function。
现在我们给前面提到的MyClass创建一个方法PutIntoActiverange功能:将x属性值写入活动单元格。
在类模块中写入下面的过程代码:
Public x$
Sub PutIntoActiverange()
ActiveCell = x
End Sub
在标准模块中用下面的代码:
Sub mynzclass5() '第5讲构建类的方法,并应用
Dim mycl As New MyClass
mycl.x = "VBA学习"
mycl.PutIntoActiverange
End Sub
代码截图:
运行结果:
今日内容回向:
1 如何构建类的方法?
2 类的应用环境是怎么样的?