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

مساعدة في نسخ قيمة حقل في نموذج الى حقل في نموذج اخر


إذهب إلى أفضل إجابة Solved by kha9009lid,

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

السلام عليكم

في النموذج   fty يوجد حقل  idx    احتاج عند كتابة قيمة في هذا الحقل وكانت هذة القيمة غير موجودة في الجدول  tx  في الحقل  idx  اظهار رسالة "هل ترغب باضافة هذا الشخص "فاذا كان الجواب نعم يتم فتح النموذج   ftx في سجل جديد واضافة القيمة المدخلة الى الحقل   idx  تلقائيا وبعكسة يتم التراجع عن الادخال 

yyyyyyyyyy.accdb

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

في نموذج fty في حدث بعد التحديث للحقل idx ضع الكود التالي

Dim x As Integer
x = DCount("[idx]", "tx", "[idx]='" & [idx] & "'")
If x = 0 Then
If MsgBox("هل ترغب باضافة هذا العميل", vbYesNo, "تنبيه") = vbYes Then
DoCmd.OpenForm "ftx", , , , , , idx
Else
Me.Undo
End If
End If
  • حجزنا متغير رقمي
  • جعلنا قيمة المتغير = عدد السجلات المطابقة للحقل idx
  • ثم وضعنا شرط اذا كان العدد 0 يظهر الرسالة من نوع نعم لا
  • اذا اخترنا نعم يفتح نموذج ftx ونحمل قيمة الحقل idx في بارامتر OpenArgs
  • اما اذا اخترنا "لا" يتم التراجع

ثم في نموذج ftx في حدث عند الفتح نضع الكود التالي

If Not IsNull(Me.OpenArgs) Then
DoCmd.GoToRecord , , acNewRec
Me.idx.Value = Me.OpenArgs
End If

هنا اشترطنا اذا كان OpenArgs غير فارغ ينقلنا الى وضع اضافة سجل جديد ثم نجعل قيمة الحقل idx تساوي القيمة المحملة في OpenArgs

بالتوفيق اخ ازهر مع تحفظي على الفكرة

22 دقائق مضت, ناقل said:

تفضل اخي العزيز .... بس رجاءا لا تكرهني .... ههههههه

جميل اخي ناقل ولكن عند فتح نموذج ftx ونموذج fty مغلق سوف تظهر رسالة خطا 🌹

تم تعديل بواسطه kha9009lid
  • Thanks 2
رابط هذا التعليق
شارك

2 ساعات مضت, kha9009lid said:

في نموذج fty في حدث بعد التحديث للحقل idx ضع الكود التالي


Dim x As Integer
x = DCount("[idx]", "tx", "[idx]='" & [idx] & "'")
If x = 0 Then
If MsgBox("هل ترغب باضافة هذا العميل", vbYesNo, "تنبيه") = vbYes Then
DoCmd.OpenForm "ftx", , , , , , idx
Else
Me.Undo
End If
End If
  • حجزنا متغير رقمي
  • جعلنا قيمة المتغير = عدد السجلات المطابقة للحقل idx
  • ثم وضعنا شرط اذا كان العدد 0 يظهر الرسالة من نوع نعم لا
  • اذا اخترنا نعم يفتح نموذج ftx ونحمل قيمة الحقل idx في بارامتر OpenArgs
  • اما اذا اخترنا "لا" يتم التراجع

ثم في نموذج ftx في حدث عند الفتح نضع الكود التالي


If Not IsNull(Me.OpenArgs) Then
DoCmd.GoToRecord , , acNewRec
Me.idx.Value = Me.OpenArgs
End If

هنا اشترطنا اذا كان OpenArgs غير فارغ ينقلنا الى وضع اضافة سجل جديد ثم نجعل قيمة الحقل idx تساوي القيمة المحملة في OpenArgs

بالتوفيق اخ ازهر مع تحفظي على الفكرة

جميل اخي ناقل ولكن عند فتح نموذج ftx ونموذج fty مغلق سوف تظهر رسالة خطا 🌹

اذا تم تطبقه واشتغل معاكم تمام ممكن ترسلوا التطبيق

 

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

  • أفضل إجابة
35 دقائق مضت, طاهر الوليدي said:

اذا تم تطبقه واشتغل معاكم تمام ممكن ترسلوا التطبيق

مرفق مثال مشابه عملته بشكل سريع او انتظر صاحب الموضوع يرفق لك مثاله اذا استخدم الكود الذي وضعته

 

طاهر.accdb

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

شاهذا هذه المشاركة لعدد اكبر من الحقول 👇

اقتباس

 

 

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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information