At the risk of repeating myself ... of other embaqrasments ...
ADO does not provide the necessary locking mechanisime to assure that multiple users do not access the same data / record at the 'same time'. Without such locking, your system can (and can in a multiuser app translates into "eventually will) produce duplicate values. If your app and / or your employment status can handle this, please procede ...
Another fault with the approach it that even when / if you generate the appropiate locking, you are taking the value from the table which multiple other users may be attempting to access for other purposes. If you locak the recordset (een if you could), this stops all access, so even users accessing the recordset to generate reports or update other records are locked out (anf thus likely to get errors). On the other hand, not locking the recordset almost assures that you will eventually get duplicate values for your key.
idle mussings of an otherwise idle mine .. but then I have been down the yellow brick path
MichaelRed