I have 2 questions about the Exit Event. If I want the program to take a certain action before leaving a particular control, say control "Xyz", I create a sub Xyz_Exit. This sub automatically runs whenever the user leaves control "Xyz." Therefore, it is not a sub that would be explicitly called within the program, but rather a sub that is automatically fired when the user takes a certain action. That being the case, how would I go about supplying arguments to this sub? The "help" file says that I should assign the value of True to the Cancel argument if I want the focus to stay on the control, but I could find no example of how to do that. Is there any way for the Exit Event to supply to the program the reason that the control is being exited? For example, if the user were to press the "Cancel" button on the dialog box, while in control "Xyz" it would not be desirable to run function Xyz_Exit, but if the user leaves the control for any other reason than it would be. If there were a way for the program to see the intended destination before running, that would be great. I realize that I could, instead of using the Exit Event on control "Xyz" I could instead add an Enter Event on every control except control "Xyz" and the Cancel button, but with the large number of controls on my dialog box that would be a big job, particularly since the "Xyz" control is far from the only one that requires this type of treatment. I realize that the wisdom of doing it this way can be debated, but rather than having that debate I would just like to have an answer to my technical questions. I'm not the one who decides exactly how the dialog box should work, so I am not in a position to respond to your misgivings. Frankly, I have them too. So I'm just requesting help from anyone with the needed knowledge that would be kind enough to help. Thank you, Randy