1、对象
对象是指excel中一切具有名称的概念,例如:单元格、工作表、工作簿、窗口、批注等,常见的对象如下:
对象类别 |
含义 |
Application |
代表excel整个应用程序 |
Workbook |
代表excel工作簿 |
Worksheet |
代表工作表 |
Range |
代表单元格 |
Shape |
代表图形,例如图表、图形、艺术字等 |
Name |
代表名称对象 |
Chart |
代表图表对象 |
WorksheetFunction |
代表工作函数对象 |
Comment |
代表单元格的批注 |
既然有单个对象,那么就有多个对象,多个对象叫做对象集合,常见的对象集合如下:
Workbooks: 工作簿集合
Worksheets: 工作表集合
Comments: 批注集合
Cells: 单元格集合
Shapes: 图形对象集合
那怎么引用集合中的单个对象呢?有两种方式:
- 使用序号引用,格式为: 对象集合(序号),序号从1开始,例如:
Worksheets(3) 引用打开的第3个工作表
- 使用名称引用,格式为:对象集合(“对象名称”),例如:
Worksheets(“sheet2”) 引用打开的名称为sheet2的工作表
2、对象的层级结构
Application->Workbook->Worksheet->Rows/Columns->Range(单元格)->Comment
Application.Activesheet: 表示活动工作簿中的活动工作表,不管打开了几个工作簿,都只有一个活动工作表
Workbook.Activesheet: 表示当前工作簿的活动工作表,可以打开多个工作簿,所以可以有多个工作表
Application.Range: 代表活动工作表中的单元格
Worksheet.Range: 代表当前工作簿中任何工作表中的任何单元格’
Application.Cells、Worksheets.Cells同理,前者只能访问活动工作表中的单元格,后者可以访问任意表中的单元格
父对象访问子对象,格式:对象名称.子对象名称,例如:Worksheets(1).Cells(10)
子对象访问父对象,格式:对象名称.Parent,例如:Cells(2).Parent,访问第2个单元格的父对象,即活动工作表
3、活动对象
活动对象是指当前处于激活状态的对象,活动对象可以直接访问,不用指定名称,常见活动对象如下:
Activesheet: 当前处于激活状态的工作表
ActiveWorkbook: 处于激活状态的工作簿
ActiveCell: 处于激活状态的单元格
ActiveWindow: 处于激活状态的窗口
4、方法、属性、事件
方法:指对对象做什么操作,例如close、activate
属性: 指对象的描述,例如name、text
事件: 指对象发生了什么,例如打开工作簿就会产生一个Open事件,事件的命名为对象_事件名,打开事件的全命名为Workbook_Open()
工作簿的常见事件如下:
事件名称 |
说明 |
Activate |
激活工作簿、工作表、图表时发生 |
AfterSave |
保存工作簿后发生 |
BeforeClose |
关闭工作簿前发生 |
BeforePrint |
打印工作簿前发生 |
BeforeSave |
保存工作簿前发生 |
Deactivate |
在图表、工作表、工作簿被停用时发生 |
NewChart |
创建新图表时发生 |
NewSheet |
创建新工作表时发生 |
Open |
打开工作簿时发生 |
SheetActivate |
激活任何工作表时发生 |
SheetBeforeDelete |
删除工作表前发生 |
SheetBeforeDoubleClick |
双击任何工作表时发生 |
SheetBeforeRightClick |
右击任何单元格时发生 |
SheetCalculate |
重新计算工作表或者在图表上绘制更改的数据时发生 |
SheetChange |
更改了工作表中的单元格时发生 |
SheetDeactivate |
工作表被停用了时发生 |
SheetPivotTableUpdate |
数据透视表更新时发生 |
SheetSelectionChange |
工作表上的待定区域发生改变时发生 |
WindowActivate |
工作簿窗口激活时发生 |
WindowDeactivate |
工作簿窗口被停用时发生 |
工作簿事件的代码必须放在ThisWorkbook中才会生效
工作表的常见事件如下:
事件名称 |
说明 |
Activate |
激活时发生 |
BeforeDelete |
删除工作表前发生 |
BeforeDoubleClick |
双击工作表时发生 |
BeforeRightClick |
右击工作表时发生 |
Calculate |
工作表重新计算时发生 |
Change |
单元格发生改变时发生 |
Deactivate |
图表、工作表、工作簿被停用时发生 |
SelectionChange |
待定区域发生改变时发生 |
工作表事件的代码必须放在工作表的代码中才会生效
原创文章,转载请注明出处:http://www.nwumba.cn/article/11/