استبدل الكود الموجود لديك بهذا الكود .....
On Error Resume Next
Dim Db As DAO.Database
Dim Rc As DAO.Recordset
Dim ChequesFound
Dim ChequeNoStart As Long
Dim ChequeNoEnd As Long
Dim i As Long
Set Db = CurrentDb
Set Rc = Db.OpenRecordset("SELECT SamoBrojevitxt([dbo_ID]) AS Brojevtxti FROM dbo_Tbl_Emp ORDER BY SamoBrojevitxt([dbo_ID]);")
Do While Not Rc.EOF
Rc.MoveNext
Loop
If Rc.RecordCount = 0 Then
dbo_ID = "Em." & Right(Year(Date), 2) & "001"
'MsgBox "No Records Found"
GoTo cmdDisplay_Exit
End If
DoCmd.GoToRecord , "", acNewRec
Rc.MoveFirst
ChequesFound = Rc.GetRows(Rc.RecordCount)
ChequeNoStart = ChequesFound(0, 0)
ChequeNoEnd = ChequesFound(0, UBound(ChequesFound, 2))
For i = ChequeNoStart To ChequeNoEnd
If BinarySearch(ChequesFound, i) = False Then
dbo_ID = "Em." & i
GoTo cmdDisplay_Exit
Else
dbo_ID = "Em." & Replace(Nz(DMax("dbo_ID", "dbo_Tbl_Emp", "dbo_ID like 'Em." & Right(Year(Date), 2) & "*'"), "Em." & Right(Year(Date), 2) & "000"), "Em.", "") + 1
End If
Next i
cmdDisplay_Exit:
Set Rc = Nothing
Set Db = Nothing