I had thought that this would be a simple thing to do but I can't find the answer to it anywhere. I'm working on a form that has 10 or so fields. After data has been entered the user presses a button to log that data. There is code behind the button that checks the data entered for completeness and so on, however the user is not forced to press the log button. Therefore a careless user could carry on without having pressed the log button which is a scenario I want to avoid. The Current() procedure runs when the form moves from record to record, which is what I want. However any code that you place in such a procedure is executed after you move to the new record, rather than before you leave the old one. I want to achieve the latter. How can this be done?