When is an autonumber value allocated?
An autonumber value is allocated as soon as a user hits one character or digit in any field in a new record. If, a millisecond, later another user or program creates another record, even if no data has yet been saved by the first user or program, the next autonumber value will be used.
Create an MDB with one table with an autonumber field and another field such as a text field. Open that MDB from two instances of Access.
In one instance of Access put any character in that field and do not tab or enter in the field. You will see the autonumber set to 1. Notice the triangle in the record selector area on the left hand side of the screen. It will change to a pencil indicating that "You are editing this record; changes to the record aren't yet saved." (from Access 97 help.)
In the other instance of Access against the same MDB also enter a character in the text field. You will note that the autonumber is now 2. And also that the triangle in the record selector has changed to a pencil.
The appearance of the 1 and 2 of course assume that the NewValues property of the autonumber field is set to Increment and not Random.
This is not true when using SQL Server to store your data. SQL Server only assigns an autonumber value when the record is saved. I have no idea about other data storage mechanisms such as Oracle, DB2 or MySQL.