First thing, In A2K never use autonumber fields in a table that you will be deleting records from.
Reason: When you compact and repair the database A2k will reset the autonumber to the earliest empty slot in the sequence of numbers.
Example: Records 1-10 are created, you delete record 2 then compact and repair the database (because it is access and will swell in size if you don't). At this point A2k will reset the autonumber to 2, so the next record you enter will now be record 2.
Problem: The next autonumber, once 2 is created, will be 3 which is already being used. Since it is an autonumber there can be no duplicates, hense the problem.
Solution: Create the field in the table, but just set it to number. Put the field on the form and use the expression "DMax("[FieldName]", "TableName") + 1" in the Default Value Property or in the VBA code behind the form to set the value for the field when there is a new record. Syntax may change depending on whether it is VBA or Default Value Property.
2. You can put anything you want to on a form, but the general rule of thumb is; if you don't want users to be able to see it or change it make it invisible (Set the visible property of the control to NO) if it has to be on the form.
All that aside, if you are going to use autonumbers they will generate automatically when a record is started regardless of whether they are on the form or not. Play with entering data in the table with the autonumbers. You should find that when you start a new record the autonumber fills in (1). If you cancel the entry or delete the record and start again, the autonumber should skip to the next number (2, 3, 4, etc).
I also took a couple of classes at Software Solutions Now (
www.ssnow.com) that helped a lot. One thing the instructor stated firmly was that she never used autonumbers. She said she would always use the DMax function to set up sequential numbering. That way the next record is always the max number in the list plus 1.
I hope this helps. Also, if you want to email me I would be happy to see if I can dig up the manuals I have and pass them on to you. (jyeatman@ene.com)