Microsoft Office 2000/Visual Basic Programmer's Guide   

When Do You Need to Create a Custom Event?

In many cases, it's not absolutely necessary to create a custom event — you can call a procedure to do the same thing. On the other hand, creating an event for a custom object can improve the object's flexibility and reusability. If you call a method rather than raising an event, the method will run the same way every time, no matter what code is working with the object. If you raise an event, the programmer who's using the object can decide how to respond to the event and can use the same object in different scenarios. Imagine, for example, if a command button ran the same code every time the user clicked it, instead of providing an event procedure to run whatever code the programmer chooses. Command buttons wouldn't be nearly as useful!

Here are some cases where you'll need to create an event rather than use a procedure: