在VBE 编辑器提供了 个工作表事件,其中用得较多的是:Activate、Deactivate、Calculate、 Change、SelectionChange 等事件。 1、Activate 事件:当工作表对象被激活时将引发该事件。如激活某工作表时显示当前工作工 作表中已有的记录数,并询问用户是否打印这些数据。 Private Sub Worksheet_Activate() Dim rel, icount icount '减去第一行(标题行)rel "个用户记录,立即打印吗?",vbYesNo) ActiveSheet.PrintOutElse Cancel TrueEnd Sub 2、Deactivate 事件:当工作表对象由活动状态转变为非活动状态时触发该事件(即工作表 失去焦点)。下面的例子就是当某工作表(如分表数据)转变为非活动状态时自动隐藏同时 强制激活“总表”数据所在的工作表。 Private Sub Worksheet_Deactivate() Worksheets("分表").Visible FalseWorksheets("总表").Activate End Sub 3、Calculate 事件:当工作表重新计算时将触发该事件。如当工作表进行重新计算操作时自 动调整表格中的列宽和行高到最合适的大小: Private Sub Worksheet_Calculate() ActiveSheet.Columns.AutoFit ActiveSheet.Rows.AutoFit End Sub 4、Change 事件:当用户更改单元格中的数据或外部链接引起单元格发生数值变化将会引发 该事件。下面的例子是当用户在第2 将自动转换为文字“男”,输入其它内容全部变为文字“女”。