hey guys,
thanks a lot for your help and really sorry for replying this late... had been spending sleepless nights trying to improvise and find a solution to my problem, i wanted the user to have the ability to close or quit the form at any point he feels and not save the record but at the same time i had validation checks to see if any field was left null.. for the main form it was quite easy to have a before update routine for the form and quit anytime in between since records would not be saved. However for the subform, since the close button is on the main form, having a before update routine was causing problems with quitting the form using close button since u cannot shift focus out of the subform till all fields are updated.
cbrighton: thats right i wanted to bypass the before update event and force my close button code to execute, but then what u replied that time gave me another idea, since previously i did not have before update routine on my subform, and was trying to properly refer the subform fields using my close button to throw an error, but using the forms dirty property i did not realize, it would always be false since clicking my close button would mean shifting focus out of the subform.
gemma: thanx i thought of this too , having a error handler and capturing the before update error there and forcing my close button code to execute, but never really ended up implementing it since my knowledge is pretty limited in access and coding.
Nyways i have finally redesigned and improvised my application after going through pages and pages of code and solutions on the net

instead of having before update event for my form, i have before update events on each control of the form and subforms, close button can be executed anytime and my code deletes the saved records from the table letting the user think, it did not get saved. If any user tries to end the application using task manager, his name would get captured in audit trail for that record, since i have a login form and employees table. In the edit mode for saved records, i am using temp tables to save the record the user is working on and if he quits in between, all the records are rolled back to old values in the form as well as the subform. Thanx to microsoft's solution for it. All in all the application works like a charm now
THANX AGAIN FOR ALL YOUR HELP AND RESPONSES

and sorry for the huge reply lol