First off, moving to a New Record has nothing to so with refreshing a form; that's something else, entirely, and you're confusing the issue by using it, here!
Secondly, as June7 said, the act of moving to a New Record will save the Current Record and make the Form ready for a New Record, with all Controls empty.
Assuming that the Status Field is part of the RecordSource for the Form, simply place a Control on the Form with its Control Source set to that Field.
Rather than having four 'save and whatever' buttons, I'd have one button for moving to a New Record (using your above code) which will save the Record and use a Combobox as the Control for the selection of the Status Field. It's not hard to do:
- Place a Combobox on the Form
- Select "I will type the Values I want"
- Under Col1 enter Pending, In Progress, Verified and Complete
- Step through the rest of the Combobox Wizard
- With the Combobox selected, go to Properties - Data and set the Control Source to the Status Field.
If you want, you can make the Status Field required by using code in the Form_BeforeUpdate event to check that a status has been selected, and cancel the update until it is.
Linq ;0)>
The problem with making anything foolproof...is that fools are so darn ingenious!
All posts/responses based on Access 2003/2007