sub属性是什么意思_m和sub本质的区别
Sub子过程、函数及类模块详解
一、Sub子过程
Sub子过程是通过Sub和End Sub之间的VBA代码构成的。在Sub前,可以添加如Private、Public、Static等限制过程作用域的关键字。Sub子过程的结构如下所述。
二、Function函数
Function函数过程的创建方法与Sub过程类似。在运用Function函数时,需要使用一个与函数同名的变量来接收返回值。Function函数的语法结构大体如此。
三、类模块与类函数
类模块提供了一种在VBA中创建和操作对象类的方法。当把过程规模布置在类模块中,并在函数名前加上Public关键字时,该过程则可在整个应用程序范围内使用。
针对EXCEL工作空间、表格、单元格区域及各种控件的不同事件创建的过程,仅当响应相应事件时才会运行。类函数的作用域和生存期与Function函数和Sub子过程有所不同,其作用主要在于响应外部动作(如用户操作鼠标、键盘)并执行相应操作。
例如,在EXCEL表格中引用公共类函数时,操作方式与其他EXCEL自带函数相同,仅需在任意单元格内键入函数名及相应的参数即可获得结果。
类模块与面向对象编程
类是面向对象程序设计中的基本概念。它是对现实生活中具有共同特征的事物的抽象,包含了操作自身成员的方法。类定义了对象的行为,描述了对象能够做什么以及如何做的方法。它包含了名称、方法、属性和事件等信息。
在生产过程中,产品模具就是一个“类”,而用该模具大量生产出的相同形状的产品就是“对象”。同样地,在EXCEL VBA中,各种对象如Workbook、Worksheet、Range、Cells等都是由相应的类来创建的。
四、创建及使用类模块
在EXCEL VBA环境(VBE)中,通过点击主菜单【插入】-【类模块】命令,可以插入一个新的类模块。给插入的类模块命名后,即可开始定义类的属性、方法和事件。
使用Property Let过程可以设置类模块的属性,而Property Get过程则用于读取属性值。建立好类的属性后,就可以通过实例化该类来创建可用来工作的实际对象。
还可以通过建立数组类来方便地和处理数据。VBA中的所有可执行语句都必须位于某个过程中,通过合理使用过程,可以将应用程序分解为相对独立的逻辑单元,从而实现结构化编程。