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

كيف امنع التكرار بشرطين


ايناس

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

كيف امنع التكرار بشرطين مع العلم اذا حذفت الشرط الثاني تشتغل و لو تركت الرشطين بتفشل 

الرجاء المساعدة

If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = """ & Me.NICHE & """ + NUMERO_REGION = """ & Me.NUMERO_REGION & """") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

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

جرب هذا التعديل ، فقط أعتقد أن المشكلة كانت بوجود اشارة + بين الشرطين .

If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = """ & Me.NICHE & """ AND NUMERO_REGION = """ & Me.NUMERO_REGION & """") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

 

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

لا جربت من قبل و ماشتغلت شكرا

 

و هذه ايضا لم تنجح و اذا حذفت الشرط الثاني تصبح صحيحة و انا ارد الشرطين

 

If DCount("*", "ADHERENTS", "NICHE = """ & Me.NICHE & """ AND NUMERO_REGION = """ & Me.NUMERO_REGION & """") <> 0 Then

 

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

انا اسفة انا جديدة و لغة العربية صعبة احاول الفهم

3 دقائق مضت, Foksh said:

بداية أخي الكريم ، اختيار الإجابة الأفضل في حال كانت الإجابة هي الحل الصحيح ، 

ثانياً ارسل مرفق للمتابعة

مامعنى مرفق للمتابعة 

 

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

5 دقائق مضت, ايناس said:

انا اسفة انا جديدة و لغة العربية صعبة احاول الفهم

مامعنى مرفق للمتابعة 

 

ما في مشكلة ، جربي هذا الكود .

If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = '" & Me.NICHE & "' AND NUMERO_REGION = '" & Me.NUMERO_REGION & "'") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

هذا التعديل يعني الآن أن الشرطين (NICHE وNUMERO_REGION) يجب أن يكونا متحققين معًا ليتم اعتبارهما تكرارًا.

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

1 دقيقه مضت, Foksh said:

ما في مشكلة ، جربي هذا الكود .

If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = '" & Me.NICHE & "' AND NUMERO_REGION = '" & Me.NUMERO_REGION & "'") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

 

نفس المشكل يطبق الشرط الاول و الثاني لا

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

1 دقيقه مضت, ايناس said:

نفس المشكل يطبق الشرط الاول و الثاني لا

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

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

3 دقائق مضت, Foksh said:

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

 

Database21.accdb

الان, ايناس said:

 

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

  • ابوخليل changed the title to كيف امنع التكرار بشرطين

أختي الكريمة يبدو أن الملف المرفق فيه مشكلة في الـ VBA ، فعند وضع أي كود عن طريق الـ VBA فإنه لا يعمل.

تفضلي هذا الحل في النموذج Form1

Database21.accdb

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

6 دقائق مضت, Foksh said:

أختي الكريمة يبدو أن الملف المرفق فيه مشكلة في الـ VBA ، فعند وضع أي كود عن طريق الـ VBA فإنه لا يعمل.

 

في حل ثاني استغنى عن هذه المشكل

الرجاء لو ممكن مساعدة اريد في النموذج عند ادخال الباينات اضيف اول حرف من بيان اخر لكي اتفادى التكرار NICHEمثال اسم المكان مصر و NICHE م  مع كتابة الرقم يعني م1 م2 م3

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

2 دقائق مضت, ايناس said:

في حل ثاني استغنى عن هذه المشكل

بالنسبة للحل الثاني ، فهو سهل ، فقط احذفي النموذج وأنشئي نموذج آخر جديد ،

أما بخصوص :smile2: :-

3 دقائق مضت, ايناس said:

الرجاء لو ممكن مساعدة اريد في النموذج عند ادخال الباينات اضيف اول حرف من بيان اخر لكي اتفادى التكرار NICHEمثال اسم المكان مصر و NICHE م  مع كتابة الرقم يعني م1 م2 م3

لم أفهم ما المطلوب :biggrin2:

ولكن في الحل الذي قدمته لك الشرطين يعملان في نفس الوقت لمنع التكرار .

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

1 دقيقه مضت, Foksh said:

بالنسبة للحل الثاني ، فهو سهل ، فقط احذفي النموذج وأنشئي نموذج آخر جديد ،

أما بخصوص :smile2: :-

لم أفهم ما المطلوب :biggrin2:

ولكن في الحل الذي قدمته لك الشرطين يعملان في نفس الوقت لمنع التكرار .

If DCount("*", "ADHERENTS", "NICHE = '" & Me.NICHE & "'")

وجدت هذا فقط و هذا شرط واحد

 

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

2 دقائق مضت, ايناس said:

وجدت هذا فقط و هذا شرط واحد

 

أختي الكريمة يجوز خطأ مطبعي ، على العموم سبق أن ارفقت لك الكود في مشاراكة سابقة ،،

If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = '" & Me.NICHE & "' AND NUMERO_REGION = '" & Me.NUMERO_REGION & "'") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

 

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

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

مشاركه مع اخى @Foksh جزاه الله خيرا

يوجد ملاحظه فى كتابه اسماء الحقول فالجدول وهى تجنب وضع مسافه بين الاسماء مثل NUMERO REGION  فيكتب NumeroRegion او  NUMERO_REGION  باستخدام الشرطه السفليه بين الاسماء

ومع ذلك اتفضل التعديل التالى على الوضع الحالى

مع ملاحظه ان الحقل NUMERO REGION حقل رقمى

If IsNull(Me.NICHE) Then Exit Sub
If DCount("*";"ADHERENTS";"NICHE = '" & [NICHE] & "' AND [NUMERO REGION]= " & [NUMERO REGION]) <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

بالتوفيق

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

32 دقائق مضت, ابوبسمله said:

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

مشاركه مع اخى @Foksh جزاه الله خيرا

يوجد ملاحظه فى كتابه اسماء الحقول فالجدول وهى تجنب وضع مسافه بين الاسماء مثل NUMERO REGION  فيكتب NumeroRegion او  NUMERO_REGION  باستخدام الشرطه السفليه بين الاسماء

ومع ذلك اتفضل التعديل التالى على الوضع الحالى

مع ملاحظه ان الحقل NUMERO REGION حقل رقمى

If IsNull(Me.NICHE) Then Exit Sub
If DCount("*";"ADHERENTS";"NICHE = '" & [NICHE] & "' AND [NUMERO REGION]= " & [NUMERO REGION]) <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

بالتوفيق

جزاك الله كل خير أخي @ابوبسمله

فعلاً كلامك ما تفضلت به ، وقد تم التعديل في الكود الأخير فعلاً 😊

في 20‏/12‏/2023 at 20:59, Foksh said:
If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = '" & Me.NICHE & "' AND NUMERO_REGION = '" & Me.NUMERO_REGION & "'") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

 

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

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

وقد تم التعديل في الكود الأخير فعلاً 😊

في 20‏/12‏/2023 at 19:59, Foksh said:
If IsNull(Me.NICHE) Then Exit Sub
If DCount("ID", "ADHERENTS", "NICHE = '" & Me.NICHE & "' AND NUMERO_REGION = '" & Me.NUMERO_REGION & "'") <> 0 Then
  MsgBox "Cet ajout ferait doublon !", vbCritical
  Cancel = True
End If

معذره اخى @Foksh وبماذا يفيد هذا التعديل وانت لم تنوه عن التعديلات واسبابها حتى تقوم الاخت السائله بالتعديل بالجدول لديها باضافه الشرطه السفليه

بالاضافه الى ان الحقل NUMERO REGION حقل رقمى وانت لم تقم بتعديله بما يتناسب مع الحقول الرقميه

 

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

3 ساعات مضت, ابوبسمله said:

بالاضافه الى ان الحقل NUMERO REGION حقل رقمى وانت لم تقم بتعديله بما يتناسب مع الحقول الرقميه

 

تعدد الشروط يسبب ربكه للكثير عند كتابة المعايير

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

 

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

6 ساعات مضت, ابوبسمله said:

معذره اخى @Foksh وبماذا يفيد هذا التعديل وانت لم تنوه عن التعديلات واسبابها حتى تقوم الاخت السائله بالتعديل بالجدول لديها باضافه الشرطه السفليه

بالاضافه الى ان الحقل NUMERO REGION حقل رقمى وانت لم تقم بتعديله بما يتناسب مع الحقول الرقميه

 

أشكر مداخلتك أخي العزيز @ابوبسمله ، ولكن اسمح لي بسؤال ؛ هل قمت بتجربة الكود على الملف المرفق من الأخت صاحبة الموضوع 😅 !!

انتقلنا من فكرة التوضيح إلى فكرة التصحيح بالدرجة الأولى فقط لا غير ، وأشكرك للتوضيح هذه النقطة المهمة :fff:

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

4 ساعات مضت, شايب said:

تعدد الشروط يسبب ربكه للكثير عند كتابة المعايير

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

هذا صحيح معلمى واخى العزيز خالد جزاك الله عنا كل خير

56 دقائق مضت, Foksh said:

ولكن اسمح لي بسؤال ؛ هل قمت بتجربة الكود على الملف المرفق من الأخت صاحبة الموضوع 😅 !!

انتقلنا من فكرة التوضيح إلى فكرة التصحيح بالدرجة الأولى فقط لا غير ، وأشكرك للتوضيح هذه النقطة المهمة 

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

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

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

بالتوفيق

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

2 ساعات مضت, ابوبسمله said:

هذا صحيح معلمى واخى العزيز خالد جزاك الله عنا كل خير

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

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

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

بالتوفيق

بارك الله فيك اخي ومعلمي @ابوبسمله ، وبالعكس أنا طالب هنا وبتعلم من الخبرات العظيمة عند أخواني في المنتدى.

وبالعكس لم أتضايق بقدر ساعدتي لمناقشتك 🥰

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

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

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



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

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

Important Information