Посмотрите на этот документ:
http://support.microsoft.com/kb/213566
Создание модуля и модуля класса. Код ниже.
Код модуля класса:
Public WithEvents appevent As Application
Dim windowsCount As Integer
Private Sub appevent_WindowActivate(ByVal Wb As Workbook, ByVal Wn As Window)
If windowsCount <> Application.Windows.Count Then
MsgBox "You closed a window"
End If
End Sub
Private Sub appevent_WindowDeactivate(ByVal Wb As Workbook, ByVal Wn As Window)
windowsCount = Application.Windows.Count
End Sub
Код модуля:
Dim myobject As New Class1
Sub Test()
Set myobject.appevent = Application
End Sub
А этот обработчик для рабочей книги:
Private Sub Workbook_Open()
Test
End Sub