My guess would be that this user is trying to force logic on a VB form to run as straight-line code instead of programming against the form's event model. Thus use of a Timer's events would probably defeat his purpose.
While there are exceptions to every rule, the basic principal I follow with DoEvents() is don't. The major exception is to allow UI updates to take place during lengthy processing within an event handler: things like progress bar updates, status line message display, and command button enable/disable or caption changes. There are other exceptions too of course but most of them occur within the logic of a UserControl or Class that is processing local events and wants to raise an event to its container and allow it to be handled right away.
Using DoEvents() within an event handler always presents the potential of unanticpated re-entrancy. I see this most often with code handling Winsock control events, where it can lead to problems ranging from received data fragments being processed out of sequence to stack overflows.