مشاركةً مع الأخوة والأساتذة ..
اعتقد ان هناك مشكلة قد تواجهك إن كنت تريد تعديل خاصية الحقل داخل الجدول فعلاً .. وهي أن الجدول سيكون قيد الإستخدام يا صديقي !! صحيح ؟؟؟
لهذا اعتقد ان هناك إلتفاف حول الهدف بحيث نقوم بإلغاء ارتباط الجدول بالنموذج ، ومن ثم التعديل وإعادة الربط . وكل هذا في جزء من الثانية ..
جرب تعديل حدث عند النقر المزدوج لمربع النص Esal :-
Private Sub Esal_DblClick(Cancel As Integer)
Dim TaskDialog As Y_CTaskDialog
Dim db As DAO.Database
Dim tdf As DAO.TableDef
Dim strSource As String
Set TaskDialog = New Y_CTaskDialog
With TaskDialog
.Init
.ParenthWnd = Me.hwnd
.Flags = TDF_INPUT_BOX + TDF_RTL_LAYOUT
.MainInstruction = "رقـم الايصـال الاسـاسـى"
.Content = "ما هـى ... القيمة الافتراضية للايصال "
.CommonButtons = TDCBF_OK_BUTTON Or TDCBF_CANCEL_BUTTON
.IconMain = IDI_QUESTION
.InputBoxTextAlign = TDIBTA_Right
.InputAlignInFooter = tdcaRight
.InputAlign = TDIBA_Footer
If Not IsNull(txtChoices) Then .InputWidth = txtChoices
.InputCueBanner = " من فضلك أدخل رقم الايصال ؟ "
.DefaultCustomControl = tdccNothing
.ShowDialog
If .ResultMain = 1 Then
If IsNull(.ResultInput) Or Not IsNumeric(.ResultInput) Then
MsgBox "يجب تحديد قيمة رقمية", vbMsgBoxRight, "قيمة خاطئة"
Exit Sub
Else
If Me.Dirty Then Me.Dirty = False
strSource = Me.RecordSource
Me.RecordSource = ""
Set db = CurrentDb()
Set tdf = db.TableDefs("Tbl_Lab_All")
tdf.Fields("NO").DefaultValue = """" & .ResultInput & """"
Set tdf = Nothing
Set db = Nothing
Me.RecordSource = strSource
DoCmd.GoToRecord , , acNewRec
Me.NO.DefaultValue = """" & .ResultInput & """"
End If
ElseIf .ResultMain = 2 Then
Undo
Exit Sub
End If
End With
Set TaskDialog = Nothing
End Sub
ووجب مني التأكيد على ما تفضل به معلمي الفاضل @ابوخليل ، بأن الإسم No هو من الأسماء المحجوزة لآكسيس . وهذا خطأ كبير جداً أخي جو .
ملاحظة :- تم العمل بالتعديل على ملف المشاركة التي تفضل بها أخي @منتصر الانسي .
JO_Lab.zip