The OP says it doesn't just increment by one, but by the DIFFERENCE of the last two records' ChequeNo value, i.e. 2 and 4 in the last two rows yield 6, 8, 10 in subsequent rows, while 2 and 5 would yield 8, 11, 14, etc. That would be tricky to implement even with code.
Not really.
Depends on what you actually want to achieve but this code will increment by whatever difference the user types between rows
Code:
Option Compare Database
Dim gnum As Long
Dim inum As Long
Private Sub Form_BeforeUpdate(Cancel As Integer)
inum=0
If Field1.DefaultValue = "" Then 'this is the first entry, increment not known, so set to same value
gnum = Field1
Field1.DefaultValue = Field1
End If
If Field1 <> gnum Then 'reset the increment from 0
inum = Field1 - gnum
Field1.DefaultValue = Field1 + inum
gnum = Field1
Else 'apply the defaultvalue plus increment
Field1.DefaultValue = Val(Field1.DefaultValue) + inum
End If
End Sub