I am trying to do two things with VBA in a continuous subform with a table recordsource. The subform has 40 - 50 records per main form.

1.)[TktNo] enter consecutive number from the previous record
2.)[TktDate]duplicate the date of the previous record

Neither field is automatic - the number and the date are taken from shipping douments and entered by the user. Consecutive number ship tickets are being entered [TktNo], and duplicate dates [TktDate] are being entered per day, every day.
Each mainform is a week of shipments, so every 10 to 13 records the TktNo sequence changes and the date changes.

TktNo = Number Format
TktDate = Date/Time Format

The following code enters the same data as the previous record:
Private Sub Form_Current()

Dim lngID As Long

lngID = DMax("ID", "CybexTkts")
Me.TktNo.Value = DLookup("TktNo", "CybexTkts", "ID=" & lngID)
Me.TktDate.Value = DLookup("TktDate", "CybexTkts", "ID=" & lngID)


End Sub


My theory is to write the VBA and let the record "fill in" the ticket number plus 1 from the previous and the same date as the previous.
If user is filling in the 10 to 13 records from the same day, they will tab passed and keep the entry from VBA. When they go to the next day, they will change/overwrite the "filled in" entry to be the new TktNo and new TktDate - which will be the new series "filled in" by VBA on the next.

Is this the most efficient way to do that and keep integrity in the saved records? The intent is to speed up the data entry since it is such similair data.

My thought was to adapt my DLookup for TktNo with a criteria to be TktNo + 1, can someone advise how to write it?
Secondly, where will the save occur so that I am sure either the "filled in" or the "changed" data will remain saved to the table....once the user passed through the record (which is only 6 fields).

Thanks much