اذهب الي المحتوي
أوفيسنا

حذف سجل مع استخدام IF و Msgbox


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

لسلام عليكم ورحمة الله وبركاته
السؤال : عدة نماذج مرتبطة بعلاقات بين سجلاتها ... فيها زر حذف ماكرو ... 
اولا : عند حذف سجل من النموذج الرئيسي يظهر مسج ( لايمكن حذه لارتباطه بالنموذج الفلاني) ...
 ثانيا : عند حذف سجل غير مرتبط يظهر لي رسالة بانه سيقوم بحذف هذا السجل نهائيا اما موافق او الغاء.
المطلوب : هو استبدال الرسالتين باخرى اقوم بكتابتها بحيث يفهم البرنامج ان السجل اذا  كان مرتبط لايمكن حذفه وان السجل الغير مرتبط يتم حذفه .
كيف يتم كتابة هذا الكود باستخدام IF مع MSGBOX  وتعطيل رسائل البرنامج او كيف يتم تعديل ماكرو الحذف بهذا الشكل .
مع خالص شكري وتقديري لكم . 

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

ضع هذا الكود تحت زر امر  عند النقر ........... انسخ الكود والصقه كما هو ........ وشوف النتيجة يمكن يكون طلبك 

 

Beep

If MsgBox("ستقوم الآن بحذف السجل التالي  :" & vbCrLf _
& "(" & [الهوية_الشخصية] & ")" & vbCrLf _
& " " & vbCrLf _
& "هل أنت متأكد ؟" & vbCrLf _
& " " & vbCrLf _
& "أضغط (نعم) للإستمرار أو (لا) لإلغاء الأمر.", vbCritical + vbYesNo _
+ vbMsgBoxRight + vbMsgBoxRtlReading, "تحذيــر   !") = vbYes Then

Application.SetOption "Confirm Record Changes", False

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70


End If
 

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

الاستاذ عبد اللطيف سلوم المحترم

اشكر لحضرتكم الاجابة ...

يظهر لي مباشرة مسج 
run-time error 2465
تعذر على البرنامج العثور على الحقل المشار اليه في التعبير الذي استخدمته
زر end     زر  debug   زر help
 

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

On Error GoTo ErrHandler
Beep
If MsgBox("ستقوم الآن بحذف السجل التالي  :" & vbCrLf _
& "(" & [FatoraId] & ")" & vbCrLf _
& " " & vbCrLf _
& "هل أنت متأكد ؟" & vbCrLf _
& " " & vbCrLf _
& "أضغط (نعم) للإستمرار أو (لا) لإلغاء الأمر.", vbCritical + vbYesNo _
+ vbMsgBoxRight + vbMsgBoxRtlReading, "تحذيــر   !") = vbYes Then

Application.SetOption "Confirm Record Changes", False

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70


End If
ErrHandler:
   If err.Number = 3200 Then
MsgBox "عذراً لم تتم عملية الحذف ، السجل مرتبط"
    Exit Sub
End If

جرب الآن 

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

27 دقائق مضت, عذاب الزمان said:

الاخوة الكرام مازلت منتظرا اجاباتكم جزاكم الله خير

بما أن الحلول السابقة لم تنجح معك ولا نعلم هل استخدمتها بشكل صحيح أم لا 

لماذا لا تسهل الامر على نفسك وعلى الاعضاء وتضع مثال للتطبيق عليه 

::بالتوفيق::

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

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

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



سجل دخولك الان
×
×
  • اضف...

Important Information