VBA工作薄工作表事件一览表
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
翻箱倒柜,无意中发现个好东东
放到这里,大家查着也方便
工作簿对象事件一览表
当工作簿更改、工作簿中的任何工作表更改、加载宏更改或数据透视表更改时,将引发工作簿事件。工作簿上的事件在默认情况下是可用的。若要查看工作簿的事件过程,请用鼠标右键单击处于还原状态或最小化状态的工作簿窗口标题栏,再单击快捷菜单上的“查看代码”。在“过程”下拉列表框内选择事件名称。
事件? ? ? ? 说明
Activate
激活工作薄时
AddinInstall
当工作簿作为加载宏安装时
AddinUninstall
工作簿作为加载宏卸载时
BeforeClose
关闭工作薄前
BeforePrint
打印工作薄(或其中任何内容)之前
BeforeSave
保存工作薄前
Deactivate
工作簿从活动状态转为非活动状态时
NewSheet
在工作簿中新建工作表时
Open
打开工作簿时
PivotTableCloseConnection
在数据透视表关闭与其数据源的连接之后
PivotTableOpenConnection
在数据透视表打开与其数据源的连接之后
SheetActivate
激活任何一张表时
SheetBeforeDoubleClick
双击任何工作表时
SheetBeforeRightClick
鼠标右键单击任一工作表时
SheetCalculate
工作表重新计算时
SheetChange
更改工作表中的单元格时
SheetDeactivate
任一工作表由活动状态转为非活动状态时
SheetFollowHyperlink
单击 Microsoft Excel 中的任意超链接时
SheetPivotTableUpdate
数据透视表的工作表更新之后
SheetSelectionChange
工作簿中的数据透视表更新之后
WindowActivate
工作簿的窗口激活时
WindowDeactivate
工作簿的窗口变为非活动状态时
WindowResize
工作簿窗口调整大小时
本示例在打开工作簿时将 Microsoft Excel 窗口最大化。
Sub Workbook_Open()
? ? = xlMaximized
End Sub
? ? ? ?
Activate 事件
激活一个工作簿、工作表、图表或嵌入图表时产生此事件。
Private Sub object_Activate()
object? ?? ?Chart、Workbook、或者 Worksheet。有关对 Chart 对象使用事件的详细信息,请参阅图表对象事件的用法。
说明
切换两个显示同一个工作簿的窗口时,将产生 WindowActivate 事件,但不产生工作簿的Activate 事件。
新建窗口时不产生本事件。
示例
当激活工作表时,本示例对 A1:A10 区域进行排序。
Private Sub Worksheet_Activate()
? ? Range("a1:a10").Sort Key1:=Range("a1"), Order:=xlAscending
End Sub
AddinInstall 事件
当工作簿作为加载宏安装时,产生此事件。
Private Sub Workbook_AddinInstall()
示例
当指定工作簿作为加载宏安装时,本示例将一个控件添加到常用工具栏中。
Private Sub Workbook_AddinInstall()
? ? With ("Standard").
? ?? ???.Caption = "The AddIn's menu item"
? ?? ???.OnAction = "''!Amacro"
? ? End With End Sub
End Sub
? ? ? ? ? ? ? ?
AddinUninstall 事件
当工作簿作为加载宏卸载时,产生此事件。
Private Sub Workbook_AddinUninstall()
说明
卸载加载宏时,该加载宏并不自动关闭。
示例
当指定工作簿作为加载宏卸载时,本示例将 Microsoft Excel 最小化。
Private Sub Workbook_AddinUninstall()
? ? = xlMinimized
End Sub
BeforeClose 事件
在关闭工作簿之前,先产生此事件。如果该工作簿已经更改过,则本事件在询问用户是否保存更改之前产生。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel? ?? ?当事件产生时为 False。如果该事件过程将本参数设为 True,则停止对工作簿的关闭操作,工作薄仍处于打开状态。
示例
本示例将 BeforeClose 事件的响应设置为保存工作簿的任何更改。
Private Sub Workbook_BeforeClose(Cancel as Boolean)
? ? If = False Then
End Sub
? ? ? ? ? ? ? ?
BeforePrint 事件
在打印指定工作簿(或者其中的任何内容)之前,产生此事件。
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel? ?? ?当事件产生时为 False。如果该事件过程将本参数设为 True,则当该过程运行结束之后不打印工作簿。
示例
本示例在打印之前对当前活动工作簿的所有工作表重新计算。
Private Sub Workbook_BeforePrint(Cancel As Boolean)
? ? For Each wk in Worksheets
? ?? ???
? ? Next
End Sub
BeforeSave 事件
保存工作簿之前产生此事件。