2022年 10月 7日 来源: 新华社微博 字号:默认 超大

对于熟悉Excel对象模型的人来说,也许会觉得到目前为止所的内容都太小儿科了。确实,我也有这种感觉。解这些基础的东西对于有一定Excel VBA编程功底的人来说,太枯燥了!所以,多些图文,多些趣味,赶走枯燥。

同时,既然是完整的系列文章,我还是得从最简单的东西开始,基于不熟悉Excel VBA的朋友,从基本的知识点解,由浅入深,慢慢地让他们在无形中就会步入Excel VBA编程技术的殿堂。

另一方面,作为一个完整的系列,也应该从基础起,慢慢地开始涉及到更深入更实际的知识和实践。这会给熟悉Excel VBA的朋友带来一个完整的框架,为他们理清思路的同时,也会给他们带来原来忽视的东西。

随着系列的深入,后面会越来越精彩!

下面继续解上一节中未完的内容:Excel VBA编程中常常使用的那些对象到底是什么,如何在代码中表示它们。

Worksheet对象

Worksheet对象代表工作表。工作簿中的每个工作表都是一个Worksheet对象,所有Worksheet对象构成了Worksheets集合

我们使用下面的这一张图来完整解析Worksheet对象,如下所示。

怎么看Excel的那些常用对象

工作表的名称

如所示,上面是Excel主界面,下面是VBE界面。新建工作簿后,Excel为我们提供了1-3个默认工作表(Excel 2013中默认为1个工作表)。工作表名称默认为Sheet1、Sheet2、Sheet3。我们可以在Excel中更改工作表的名称,例如中在工作表名称中双击,将默认的名为“Sheet1”的工作表改名为“ Excel”。

再看看VBE界面,在左侧的工程资源管理器的“Microsoft Excel对象”文件夹下,Excel有几个工作表,就会有几个相对应的工作表代码模块,中是3个。在代码模块标识中,例如Sheet1( Excel),左侧的“Sheet1”是相应工作表的对象名称,右侧括号中的“ Excel”是工作表名称,也就是我们在Excel主界面工作表标签中看到的名称。

也就是说,一个工作表有两个名称,一个称为“工作表名”,在Excel主界面中可以看到和修改;另一个称为“工作表对象名”,只能在VBE界面中看到,也可以在VBE中修改。

如何在代码中表示某工作表

按照前一篇文章中归纳出来的公式,要表示某工作表,一般只需要在Worksheets集合中指定工作表名称或索引号即可,例如要在代码中指定“ Excel”工作表,可以:

1、使用工作表名称:

Worksheets(“ Excel”)

2、使用工作表索引:

Worksheets(1)

此外,由于工作表还有一个对象名称,因此还可以使用其对象名来指定“ Excel”工作表,即:

3、使用工作表对象名:

Sheet1

ActiveSheet属性

ActiveSheet属性是Workbook对象的一个属性。使用ActiveSheet属性可以获取代表当前正在使用的工作表对象。