تفضل أخي عبدالعزيز :
أضفت لك عمودين أحدهما للترقيم التلقائي لمعرفة الترتيب الحقيقي للسجل ، وحقل آخر Topic لتجربة الترقيم يمكنك استبداله بما تشاء لاحقا ..
الكود يعتمد على آخر مدخل ، حيث أن حقل For غير قابل للتحرير ( الكود يضع الترقيم بنفسه) ، وعند بداية سنة جديدة يعيد الترقيم من الرقم 1
كتبت لك هذا الكود ووضعته في حدث قبل الإدراج :
Private Sub Form_BeforeInsert(Cancel As Integer)
Dim OldN As String
Dim Y As Integer
Dim NewN As String
OldN = Nz(DLast("[for]", "TAB"), 1 & "/" & Year(Date))
Y = Right(OldN, Len(OldN) - InStr(OldN, "/"))
If Y = Year(Date) Then
NewN = CInt(Left(OldN, InStr(OldN, "/") - 1)) + 1 & "/" & Year(Date)
Me.FOR = NewN
Else
NewN = 1 & "/" & Year(Date)
Me.FOR = NewN
End If
End Sub
التقيد بالتسلسل والنمط.mdb