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

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

قام بنشر

السلام عليكم ورحمة الله وبركاته

مرفق مثال صغير 

اريد عند عدم تسجيل بيانات فى احد الحقول النموذج الفرعى لا يحفظ السجل فى الجدول master

بمعنى عندى نموذج فرعى اسمه balancesub  لو ترك احد حقول هذا الفرعى فارغ لا يتم حفظه فى الجدول المسمى mster 

اما اذا سجل جميع البيانات يقوم بالحفظ بالجدول

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

عدم الحفظ.accdbFetching info...

قام بنشر
  في 21‏/11‏/2022 at 20:27, ابوبسمله said:

اتفضل يادكتور محمد @الحلبي ان شاء الله يكون ما تريد

Expand  

استاذى ومعلمى القدير / ابنى الاستاذ احمد

ايه الجمال ده الله يفتح عليك ويزيدك علم ـ جميل جدا جدا جدا جدا هذا الكود

اللهم بارك في استاذنا احمد وبارك فى اسرته الكريمة وعافيه فى صحته امين

كل الاحترام والتقدير لاستاذى

  • Like 1
  • Thanks 1
قام بنشر

شكرا لك أخي أبو بسملة 🙂 

وهذي إضافة بسيطة لنفس الكود في حال أردت ألا تلتغي البيانات .. وإنما يعطيك رسالة تنبيه لإكمال الحقول الناقصة 🙂 

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
           MsgBox "كمل شغلك :)"
            Cancel = True
        End If
    End If
Next ctl
End Sub

 

  • Like 4
قام بنشر
  في 22‏/11‏/2022 at 08:47, Moosak said:

هذي إضافة بسيطة لنفس الكود في حال أردت ألا تلتغي البيانات .. وإنما يعطيك رسالة تنبيه لإكمال الحقول الناقصة

Expand  

اعتقد ان هذه الاضافة ينقصها شئ لان عند التجربة ظهرت لى الرسالة : اكمل شغلك عدة مرات بقدر عدد السجلات

وتظهر ايضا الرسالة عند اغلاق النموذج الرئيسى 

وهذا لايمنع من مشاركة الاستاذ والخبير القدير / الاستاذ موسى معنا وانا شخصيا لا يهمنى الحل قدر مساعدة بعضنا البعض

فحي الله الاستاذ موسى وطال عمره وجعله فى ميزان الحسنات وارزقه رزق بغير حساب

تحية طيبه لحضرتك وللمشاركة

  • Like 2
قام بنشر
  في 22‏/11‏/2022 at 11:12, الحلبي said:

اعتقد ان هذه الاضافة ينقصها شئ لان عند التجربة ظهرت لى الرسالة : اكمل شغلك عدة مرات بقدر عدد السجلات

Expand  

كلامك صحيح

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

الحقيقة انا لم احمل المثال ولكن كفكرة بسيطة ممكن نجرب اضافة متغيير بسيط رقمي ونستفيد من قيمة المتغيير الافتراضية "0"

Dim x As Byte
Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
            x = 1
           Cancel = True
        End If
    End If
Next ctl
If x <> 0 Then
MsgBox "كمل شغلك :)"
End If

كما اشرت انا لم اجرب المثال ولكن منطقيا ستكون الاجابة صحيحة

تحياتي

  • Like 5
قام بنشر

السلام عليكم 🙂

 

وبتعديل على كود اخوي موسى :

الرسالة تخبرك اي حقل فارغ ، تلغي عملية الحفظ ، ويكون التركيز على الحقل الفارغ :

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
            MsgBox "رجاء تعبئة الحقل الفارغ " & ctl.name
            Cancel = True
            ctl.setfocus
            exit for
        End If
    End If
Next ctl
End Sub

.

وانا كذلك مثل اخوي خالد ، لم اقم بتجربة الكود 🙂

 

جعفر

  • Like 4
قام بنشر
  في 22‏/11‏/2022 at 14:25, jjafferr said:

وانا كذلك مثل اخوي خالد ، لم اقم بتجربة الكود 🙂

Expand  

اهم شي كبسنا وجودك في الموضوع

طيب لو اردنا العمل بدون تكرار الرسائل وبدون متغيير

نضع

Exit For

عند اول مرور على حقل فارغ

ويكون كود الاستاذ موسى

Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
           MsgBox "كمل شغلك :)"
            Cancel = True
            Exit For
        End If
    End If
Next ctl

تحياتي

  • Like 4
قام بنشر (معدل)

الله .. الله .. ما أجمل هذي المدارسة بين الفطاحل 😄

وهذه إضافة من عندي 😁

يمكن الخروج من الكود أيضا بكتابة كلمة End  فقط والتركيز على الحقل الفارغ ( لندمج الأفكار 😉 )  فيصبح الكود هكذا :

Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
            Cancel = True
            ctl.SetFocus
            MsgBox "رجاء تعبئة الحقل الفارغ " & ctl.name
            End
        End If
    End If
Next ctl

 

تم تعديل بواسطه Moosak
  • Like 3
قام بنشر

دكتور @الحلبي اسمح لنا ناخذ راحتنا شوي 🙂

كلنا نستعمل كود اخونا @ابوبسمله ، اللي اعاد ترويضه اخونا @Moosak ، واخونا @مبرمج متقاعد 🙂

 

طيب ايش رايكم في اخبارنا بجميع الحقول الفارغة ، وبرسالة واحدة :

Option Compare Database

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim I_am_Empty As String, Set_Focus_On_Me As Control

Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
        If Len(ctl.Value & "") = 0 Then
            I_am_Empty = I_am_Empty & vbCrLf & ctl.Name
            Set Set_Focus_On_Me = ctl
        End If
    End If
Next ctl

If Len(I_am_Empty & "") <> 0 Then
            Cancel = True
            MsgBox "رجاء تعبئة الحقول الفارغة التالية" & I_am_Empty
            Set_Focus_On_Me.SetFocus
            Set ctl = Nothing: Set Set_Focus_On_Me = Nothing
            Exit Sub
End If


End Sub

.

جعفر

 

 

عدم الحفظ.zipFetching info...

  • Like 4
قام بنشر
  في 22‏/11‏/2022 at 16:02, Moosak said:

ملاحظة عمي خالد : الكود للحبيب @ابوبسمله 🙂 

Expand  

الحقيقة اختلط الامر على فانا لم احمل المرفق ⬇️

  في 22‏/11‏/2022 at 14:04, مبرمج متقاعد said:

الحقيقة انا لم احمل المثال

Expand  

لذا اعتذر منكم استاذي ومن اخي العزيز ابو بسملة

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

تحياتي

  • Like 2
قام بنشر

لأن العلم معينه لا ينضب هذي إضافة جديدة أخرى 😊

 

ماذا لو أردنا منه تلوين الخلايا الفارغة باللون الأصفر مثلا 😏 :

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim I_am_Empty As String, Set_Focus_On_Me As Control

Dim ctl As Control
For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
    ctl.BackColor = vbWhite
        If Len(ctl.Value & "") = 0 Then
            I_am_Empty = I_am_Empty & vbCrLf & ctl.Name
            Set Set_Focus_On_Me = ctl
            ctl.BackColor = vbYellow
        End If
    End If
Next ctl

If Len(I_am_Empty & "") <> 0 Then
            Cancel = True
            MsgBox "رجاء تعبئة الحقول الفارغة التالية" & I_am_Empty
            Set_Focus_On_Me.SetFocus
            Exit Sub
End If

Set ctl = Nothing: Set Set_Focus_On_Me = Nothing
End Sub

بس المشكلة أنه يلون العمود كاملا وليس السطر الحالي فقط 😅

قام بنشر
  في 22‏/11‏/2022 at 05:11, الحلبي said:

ابنى الاستاذ احمد

ايه الجمال ده الله يفتح عليك ويزيدك علم ـ جميل جدا جدا جدا جدا هذا الكود

اللهم بارك في استاذنا احمد وبارك فى اسرته الكريمة وعافيه فى صحته امين

كل الاحترام والتقدير لاستاذى

Expand  

اهلا ومرحبا والدى العزيز ابوشادى ده جمال طلتكم علينا ، اللهم آمين واياكم

اللهم آمين تسلم وجزاك الله كل خير

تقبل تحياتى

شوفت بقى اسئلتك بتجمع الحبايب كلهم بسم الله ماشاء الله الحبايب كلهم متجمعين يارب متجمعين دايما وصحبه ان شاء الله فزيارة بيت الله الحرام ورسول الله صلي الله عليه وسلم اللهم آمين

الله الله على الاضافات الرائعه من اساتذتى جزاكم الله عنا كل خير

تقبلوا تحياتى واحترامى وجزاكم الله عنا كل خير

قام بنشر

اخوانى الاعزاء والاحباب 

تغيبت عن المنتدى بضغ ساعات ارجع واجد كل هذه الحوارت والعبقريات فى سؤالى

فعلا انا محظوظ ومديون لهذا المنتدى بالكثير لانى تعلمت منه الكثير على يد هولاء  الخبراء الموجدين فى المشاركة

  في 22‏/11‏/2022 at 14:04, مبرمج متقاعد said:

الحقيقة انا لم احمل المثال ولكن كفكرة بسيطة ممكن نجرب اضافة متغيير بسيط رقمي ونستفيد من قيمة المتغيير الافتراضية "0"

Expand  

هذه نظرة استاذنا الاستاذ/ خالد

  في 22‏/11‏/2022 at 14:25, jjafferr said:

لرسالة تخبرك اي حقل فارغ ، تلغي عملية الحفظ ، ويكون التركيز على الحقل الفارغ :

Expand  

هذه نظرة استاذنا / الاستاذ جعف

  في 22‏/11‏/2022 at 16:32, Moosak said:

أن العلم معينه لا ينضب هذي إضافة جديدة أخرى 😊

Expand  

وهذه نظرة استاذنا / الاستاذ موسى

  في 22‏/11‏/2022 at 16:20, مبرمج متقاعد said:

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

Expand  

استاذنا ومعلمنا الاستاذ/ خالد طول عمرى اقول انك انسان محترم وذكى جدا جدا ( وانا بتاع موارد بشرية ) اشكرك على هذه الملاحظة وربنا يجزاك خير ولا يحرمنا ابدا من ابداعاتك

هذه افكار جميلة ولكن ينقصها التطبيق على المثال 

جميع الحلول والاكواد لا تعمل جيدا ( طبق على مثال ابو بسمله) 

عند الخروج من النموذج تخرج الرسالة مرة اخرى وتخرج معها رسالة اخرى تقول : لا يمكن حفظ التعديل الجاري 

يعجز لسانى عن شكركم جميعا ولاسوى الا ان اقول بارك الله فيكم وجعلكم خير اساتذه فعلا تعلمنا على ايدكم الكثير

انا مش عارف فين استاذنا ومعلمنا الاستاذ / احمد الفلاحجى هو فيــــــــــــــــــــــن

كل التقدير والاحترام لكم

 

 

 

 

 

قام بنشر
  في 22‏/11‏/2022 at 17:37, ابوبسمله said:

هههههههههههه كنت نايم يادكتور معلش بقى

Expand  

انا عارف يااستاذ / احمد وعارف هذه مداعبة من تلميذ لاستاذه

انا عارف ان شغلك صعب جدا وانت شايل مسئولية كبيرة الله يعينك عليها

يجزاك كل خير وكل الاحترام والتقدير

  • Thanks 1
قام بنشر
  في 22‏/11‏/2022 at 18:21, jjafferr said:

وارفقت المرفق في مشاركتي السابقة

Expand  

جرب حضرتك بنفسك فى مثال ابو بسمه وضع الكود

تلاحظ طهور رسالة التنبيه عند الخروج من النموذج

قام بنشر
  في 22‏/11‏/2022 at 18:41, الحلبي said:

تلاحظ طهور رسالة التنبيه عند الخروج من النموذج

Expand  

اذا كان قصدك عند الخروج من النموذج ، وفيه حقول فارغة ، فالجواب نعم ، وهذا هو الهدف من الكود !!

 

جعفر

قام بنشر
  في 22‏/11‏/2022 at 20:19, jjafferr said:

اذا كان قصدك عند الخروج من النموذج ، وفيه حقول فارغة ، فالجواب نعم ، وهذا هو الهدف من الكود !!

Expand  

تمام استاذ / جعفر 

الله يفتح ويبارك فيك

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