分享

VBA编程基础:对象与集合

 hercules028 2023-06-26 发布于四川

对象是应用程序中的元素,如工作表、单元格、图表、窗体等。Excel应用程序提供的对象按照层次关系排列在一起构成了Excel对象模型。Excel应用程序中的顶级对象是Application对象,它表示Excel应用程序本身。Application对象包含一些其他对象,如Window对象和Workbook对象等,这些对象均被称为Application对象的子对象。反之,Application对象是上述这些对象的父对象。

比赛安排

仅当Application对象存在(应用程序本身的一个实例正在运行)时,才可以在代码中访问这些对象。

多数子对象都仍然包含各自的子对象。例如,Workbook对象包含Worksheet对象,也可以表述为:

Workbook对象是Worksheet对象的父对象。

集合是一种特殊的对象,它是一个包含多个同类对象的对象容器。例如,Worksheets集合包含工

作簿中的所有Worksheet对象。

集合中的对象可以通过序号或名称两种不同的方式来引用。例如,当前工作簿中有两个工作表,名

称依次为“Sheet1”“Sheet2”。如下两行代码都是引用名称为“Sheet2”的工作表。

图片

属性

属性是指对象的特征,如大小、颜色或屏幕位置,或者是某一方面的行为,如对象是否被激活或是否可见。通过修改对象的属性值可以改变对象的特性。对象属性赋值代码中使用等号连接对象原有属性和新的属性值。如下代码设置活动工作表的名称为“ExcelHome”。

图片

注意

对象的某些属性是只读的,代码中可以查询只读属性,但是无法修改只读属性的值。

方法

方法指对象能执行的动作。例如,使用Worksheets对象的Add方法可以添加一个新的工作表,代码如下。

图片

注意

在代码中,属性和方法都是通过连接符“.”(半角的句号)和对象连接在一起的。

事件

事件是一个对象可以辨认的动作,如单击鼠标或按下某个键盘按键等,可以指定代码针对此动作来做出响应。用户操作、程序代码的执行和操作系统本身都可以触发相关的事件。

下面的示例为工作簿的Open事件代码,每次打开代码所在的工作簿时,将显示如图3-1所示的欢迎信息提示框。

工作簿Open事件

图片
图片

图3-1 欢迎信息提示框

图片

数组

数组是一组具有相同数据类型的变量的集合,其中的变量通常被称为数组元素,每个数组元素都有一个非重复的唯一编号,这个编号叫作下标。在VBA代码中可以通过下标来识别和访问数组元素。数组元素的个数被称为该数组的长度,数组元素的下标的个数被称为该数组的维度。VBA中经常用到二维数组,可以使用arrData(x,y)的形式访问数组元素,其中x和y分别是两个维度的下标。

注意

一般情况下,数组元素的数据类型必须是相同的,但是如果数组类型被指定为Variant变体型,那么数组元素就可以保存不同类型的数据。

数组的声明方式和变量是完全相同的,可以使用Dim、Static、Private或Public语句来声明数组。

在程序运行期间,数组被临时保存在计算机内存中。相较于Excel文件中单元格数据的读取和赋值,程序代码对于数组元素的操作更加高效。因此在处理大量单元格数据时,应将数据一次性读取到数组,这将有效提升VBA代码的运行效率。

如下代码将单元格区域A1:E100的值读入内存,生成一个二维数组arrData。其中arrData(1,1)代表单元格A1,以此类推,arrData(100,5)代表单元格E100。

图片

注意

数组默认的下标下界是0,但此处的数组arrData的下标下界是1。

某些VBA函数的返回值是数组形式,如可以用于拆分字符串的Split函数,其返回值为一个下标下

界为0的一维数组。如下代码以竖线为分隔符,将字符串strTitle拆分为数组形式,其中arTitle(0)='姓名',

arTitle(3)='电话',Split函数的拆分效果类似于Excel中的“分列”功能。

图片


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多