Is it possible at all to create entirely new events in Excel VBA, not just attaching to an existing one? What I've been trying to do and not succeeding so far is to create an event which lets me know before a window is closed: a "Window_BeforeClose()" event basically. Why do I want to do this? I have an Excel VBA project with two windows that have to stay open. One of my users managed to crash the project because he accidentally closed a window. So I want to know when someone tries to close a window and then override this action.