اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

مطلوب تعديل على قاعدة التحقق من الخطأ


الردود الموصى بها

لدي نموذج في وضع السجلات المتتالية

احد العناصر اسمه A1

فكتب الكود التالي للتحقق من ان الدرجة المدخلة لا تزيد عن 50

If [A1] > 50 Then
    Beep
     MsgBox "درجة أكبر من الدرجة المطلوبة ", _
    vbInformation + vbMsgBoxRight + vbOKOnly, "AliElmasry"
      A1 = ""
end if

لاحظ اخر سطر وهو جعل الحقل فارغ بعد ظهور الرسالة

 

ولكن المشكلة ان المؤشر ينتقل إلى السجل التالي ولا يبقى في هذا السجل الذي تم ادخال درجة خطأ به

 

فهل من الممكن جعل المؤشر يظل في نفس السجل بعد رسالة التحذير

 

شكرا

رابط هذا التعليق
شارك

منور الموضوع يا استاذ أبو خليل

 

المشكلة اصلا في انه لدي اكثر من شرط فجربت في قاعدة التحقق من الصحة ولم تفلح

اما الكود هي الطريقة التي اعطتني ما اريد ما عدا المشكلة المطروحة

If Test = 1 and  [A1] > 50 Then
    Beep
     MsgBox "درجة أكبر من الدرجة المطلوبة ", _
    vbInformation + vbMsgBoxRight + vbOKOnly, "AliElmasry"
      A1 = ""
Elseif Test = 2 and  [A1] > 25 Then
    Beep
     MsgBox "درجة أكبر من الدرجة المطلوبة ", _
    vbInformation + vbMsgBoxRight + vbOKOnly, "AliElmasry"
      A1 = ""

end if
رابط هذا التعليق
شارك

لا مشكلة

اجعل الحدث قبل التحديث

واجعل الغاء الحدث بعد نهاية الشرط وليس قبله 

Private Sub a1_BeforeUpdate(Cancel As Integer)
If [a1] > 50 Then
    Beep
     MsgBox "درجة أكبر من الدرجة المطلوبة "
End If
Undo
DoCmd.CancelEvent
End Sub
رابط هذا التعليق
شارك

السلام عليكم /اخي علي

يمكنك اضافة هذا السطر على الكود (في النهاية)   A1].Activate]

مع الملاحظة انه في السطر الاخير يجب ان تكتب  ""=A1  بين مزدوجين لتصبح هكذا    ""=[a1]

رابط هذا التعليق
شارك

شكرا لكما على الاهتمام

جزاكم الله خيرا

 

الحل بعد تجربة طريق استاذ ابو خليل والاستاذ سليم حاصبيا

وجدت الحالي سيكون كالتالي


Private Sub A3_BeforeUpdate(Cancel As Integer)
Tot.Requery
If Test = 1 And [A3] > 40 Then
Beep
     MsgBox "Ïدرجة أكبر من الدرجة المطلوبة & Val([LaaTest1].[Caption]), _
    vbInformation + vbMsgBoxRight + vbOKOnly, "AliElmasry"
    Undo
    DoCmd.CancelEvent
    End If
   
   If Test = 2 And [A3] > 20 Then
    Beep
     MsgBox "Ïدرجة أكبر من الدرجة المطلوبة & Val([LaaTest1].[Caption]), _
    vbInformation + vbMsgBoxRight + vbOKOnly, "AAliElmasry
      Undo
    DoCmd.CancelEvent
    End If 
End Sub







رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information