表 2-6. Application 对象事件及其发生时机
事件名称 | 发生时机 | 事件声明及参数 |
---|---|---|
AfterCalculate | 所有计算活动完成后 | Private Sub app_AfterCalculate() |
NewWorkbook | 创建新工作簿时 | Private Sub app_NewWorkbook(ByVal Wb As Workbook) |
SheetActivate | 激活任何工作表时 | Private Sub app_SheetActivate(ByVal Sh As Object) |
SheetBeforeDoubleClick | 双击任何工作表时 | Private Sub app_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) |
SheetBeforeRightClick | 右击任何工作表时 | Private Sub app_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) |
SheetCalculate | 任何工作表重新计算后 | Private Sub app_SheetCalculate(ByVal Sh As Object) |
SheetChange | 工作表中任何单元格发生变化时 | Private Sub app_SheetChange(ByVal Sh As Object, ByVal Target As Range) |
SheetDeactivate | 任何工作表取消激活时 | Private Sub app_SheetDeactivate(ByVal Sh As Object) |
SheetSelectionChange | 任何工作表中选择发生变化时 | Private Sub app_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) |
WindowActivate | 激活任何工作簿窗口时 | Private Sub app_WindowActivate(ByVal Wb As Workbook, ByVal Wn As Window) |
WindowDeactivate | 任何工作簿窗口取消激活时 | Private Sub app_WindowDeactivate(ByVal Wb As Workbook, ByVal Wn As Window) |
WindowResize | 任何工作簿窗口调整大小时 | Private Sub app_WindowResize(ByVal Wb As Workbook, ByVal Wn As Window) |
WorkbookActivate | 激活任何工作簿时 | Private Sub app_WorkbookActivate(ByVal Wb As Workbook) |
WorkbookAfterSave | 工作簿保存后 | Private Sub app_WorkbookAfterSave(ByVal Wb As Workbook, ByVal Success As Boolean) |
WorkbookBeforeClose | 在任何打开的工作簿关闭之前 | Private Sub app_WorkbookBeforeClose(ByVal Wb As Workbook, Cancel As Boolean) |
WorkbookBeforePrint | 在任何打开的工作簿打印之前 | Private Sub app_WorkbookBeforePrint(ByVal Wb As Workbook, Cancel As Boolean) |
WorkbookBeforeSave | 在任何打开的工作簿保存之前 | Private Sub app_WorkbookBeforeSave(ByVal Wb As Workbook, ByVal SaveAsUI As Boolean, Cancel As Boolean) |
WorkbookDeactivate | 任何打开的工作簿取消激活时 | Private Sub app_WorkbookDeactivate(ByVal Wb As Workbook) |
WorkbookNewChart | 在任何打开的工作簿中创建新的图表时 | Private Sub app_WorkbookNewChart(ByVal Wb As Workbook, ByVal Ch As Chart) |
WorkbookNewSheet | 在任何打开的工作簿中创建新的工作表时 | Private Sub app_WorkbookNewSheet(ByVal Wb As Workbook, ByVal Sh As Object) |
WorkbookOpen | 打开工作簿时 | Private Sub app_WorkbookOpen(ByVal Wb As Workbook) |
解释:
这些是 Excel 中 Application
对象的一些主要事件。每个事件都在特定的时机触发,例如当工作簿打开、工作表激活、单元格内容更改等。这些事件允许开发者编写代码来响应 Excel 中发生的各种用户操作或系统操作,例如在工作簿保存之前执行某些任务,或者在窗口大小调整时进行一些更新。
每个事件都包含相应的事件声明和参数。例如,WorkbookBeforeClose
事件会在工作簿关闭之前触发,允许你在工作簿关闭之前进行一些清理操作。参数 Wb As Workbook
允许你引用被关闭的工作簿,Cancel As Boolean
可以用来取消关闭操作。
小贴士:
这些事件非常有用,特别是在自动化任务、数据处理或自定义用户交互时,可以帮助开发者精确控制 Excel 应用程序的行为。