在personal.xls的thisworkbook中有两个程序:Private Sub Workbook_BeforeClose(Cancel As Boolean)
MsgBox "hi!"
End SubPrivate Sub Workbook_Open() MsgBox "hi!"
End Sub为何open()的可以正常执行,而beforeclose()完全无反应?貌似关闭工作表时,完全没有触发beforeclose(),因为在beforeclose()的语句msgbox 前加上追踪点(breakpoint)然后关闭工作表,程序没有在追踪点上面停顿????
MsgBox "hi!"
End SubPrivate Sub Workbook_Open() MsgBox "hi!"
End Sub为何open()的可以正常执行,而beforeclose()完全无反应?貌似关闭工作表时,完全没有触发beforeclose(),因为在beforeclose()的语句msgbox 前加上追踪点(breakpoint)然后关闭工作表,程序没有在追踪点上面停顿????
MsgBox "hihi!"
End SubPrivate Sub Workbook_Open()
MsgBox "hi!"
End Sub
---------------------------
请问您的代码是放在personal.xls里面测试的吗?我也觉得在一般的book1,book2.。。的Thisworkbook模块里测试这些代码是没有问题的,但是一旦你把代码放在personal.xls的thisworkbook里面,就产生了这个问题!!!我的猜想是这样的,在打开任意一个工作表时,会首先执行personal.xls中的程序,然后才激活book1,book2这些真正的工作表,所以open()被正常执行;然后就没有personal.xls什么事了,在关闭工作表时,不再激发personal.xls的thisworkbook的事件,是不是这样呢?