Excel 2010 VBA: ¿Controlador de eventos para cambiar entre aplicaciones?

Tal vez solo sea malo en The Googles esta mañana, pero me está costando mucho encontrar un controlador de eventos en VBA para activar un libro de ejercicios al cambiar de otras aplicaciones. Estoy usando Excel 2010.

En el objeto ThisWorkbook, he intentado lo siguiente:

Private Sub Workbook_Activate()
    MsgBox "1"
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
    MsgBox "2"
End Sub

En un módulo de clase, he probado estos:

Public WithEvents appevent As Application
Private Sub appevent_ProtectedViewWindowActivate(ByVal Pvw As ProtectedViewWindow)
        MsgBox "1"
End Sub

Private Sub appevent_ProtectedViewWindowOpen(ByVal Pvw As ProtectedViewWindow)
        MsgBox "2"
End Sub

Private Sub appevent_WindowActivate(ByVal Wb As Workbook, ByVal Wn As Window)
        MsgBox "3"
End Sub

Private Sub appevent_WorkbookActivate(ByVal Wb As Workbook)
    MsgBox "4"
End Sub

Private Sub appevent_WorkbookDeactivate(ByVal Wb As Workbook)
    MsgBox "5"
End Sub

El resultado final aquí es deshabilitar la propiedad CellDragAndDrop cuando este libro está activado (ya sea con un clic o alt-tabbed-to) y volver a habilitarlo cuando este libro no esté activo. Probablemente algo simple me estoy perdiendo, pero estoy harto de girar en esto. ¡Gracias!

Respuestas a la pregunta(2)

Su respuesta a la pregunta