You have to select the data before you can append it. However, this cannot be a simple query that would permit the data to be edited since that will affect the old data. You could do it all in code via recordset, but it would be simpler IMHO to have a temp table which you populate all fields as required without grabbing any PK fields first. On the button save event, copy the temp data to the main table, where you're either writing new PK values, or you're not doing that at all (in the case of where the target table PK is an autonumber). Then delete the temp data in the same event. Should work as long as you're not sharing one front end.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.