Waarschijnlijk gebruik je een veld met een AutoNummering in je facturentabel. Als je dan een nieuwe factuur aanmaakt, en die vervolgens annuleert, heeft Access het record al gemaakt, en dus ook de nummering verhoogd. Als je dat niet wilt, zou je de gegevens eerst moeten 'opsparen' op het formulier, en pas opslaan als alles is ingevuld.
Je kunt bijvoorbeeld het formulier niet baseren op een tabel/query, maar de gegevens ophalen met b.h.v. een recordset die je aan het OnLoad Event hangt, in combinatie met een Insert query gebaseerd op de waarden die je met het formulier laat invullen.
Ik kan eventueel wel een voorbeeldje uploaden van zo'n constructie.
Iets makkelijker is het om geen autonummerveld te gebruiken, maar een gewoon numeriek veld, en met DMAX de hoogste waarde op te vragen, en die met 1 te verhogen op het formulier. Dan kun je het record altijd annuleren, omdat de nieuwe hoogste waarde dan niet is opgeslagen.
Michel