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

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

قام بنشر

السلام عليكم ورحمه الله وبركاته
السؤال هو لدي خانه تتكون من 14 رقم اذا كان الرقم اقل او اكثر تظهر رساله تفيد الحالة
اما اذا الرقم يساوى 14 رقم اريد التاكد من ان الرقم لم يوجد قبل ذلك فى الجدول
هذا الكود الى كتبته ولكن هناك خطأ حيث ان الرقم اذا تساوى مع 14 حتى لو جديد يظهر رساله تفيد بان الرقم مكرر مع العلم انه ليس مكرر :wallbash: 
هل من حل وبارك الله فيكم

الكود هو :

Dim Answer As Variant
If Len(Trim(Me.الرقم_القومي_للطالب)) < 14 Then
       MsgBox ("عدد الارقام المدخلة اقل من 14 رقم الرجاء اعادة المحاولة")
       Me.الرقم_القومي_للطالب.SetFocus
       ElseIf Len(Trim(Me.الرقم_القومي_للطالب)) > 14 Then
       MsgBox ("عدد الارقام المدخلة اكبر من 14 رقم الرجاء اعادة المحاولة ")
       Me.الرقم_القومي_للطالب.SetFocus
       ElseIf Len(Trim(Me.الرقم_القومي_للطالب)) = 14 Then
Answer = DLookup("[الرقم_القومي_للطالب]", "التلاميذ", "[الرقم_القومي_للطالب] = '" & Me.الرقم_القومي_للطالب & "'")
If Not IsNull(Answer) Then
MsgBox "هذا الطالب موجود بالفعل" & vbCrLf & "اما ان الرقم القومي كتب خطأ او انك كتبته خطأ لطالب اخر , استخدم البحث لحل المشكلة.", vbCritical + vbOKOnly + vbDefaultButton1, "سجل مكرر"
Cancel = True
Me.الرقم_القومي_للطالب.Undo
else
       DoCmd.Save
       Me.الرقم_القومي_للطالب.BackColor = RGB(222, 229, 192)
       End If
      End If

 

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

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

مرحبا اخي الكريم

اختصر الكود كالتالي

If Len(Trim(Me.الرقم_القومي_للطالب)) <> 14 Then
       MsgBox ("عدد الارقام المدخلة اقل او اكثر من 14 رقم الرجاء اعادة المحاولة")
       Me.الرقم_القومي_للطالب.SetFocus
else

If DCount("[الرقم_القومي_للطالب]", "التلاميذ", "[الرقم_القومي_للطالب]=[forms]![FormName]![الرقم_القومي_للطالب]") >= 1 Then
MsgBox "  هذا الرقم مكرر بإسم   " & DLookup("[اسم التلميذ]", "التلاميذ", "[الرقم_القومي_للطالب] = Forms![FormName]![الرقم_القومي_للطالب]")
DoCmd.CancelEvent
Me.Undo

endif
endif

تحياتي

تم تعديل بواسطه محمد ابوعبد الله
  • Like 1
  • Thanks 1
قام بنشر

بارك الله فيك وجعله فى ميزان حسانك

بس معلش الكود لم يعمل معي

اسم الجدول التلاميذ
اسم النموذج التلاميذ
خانه اسم الطالب ( الاسم)
فالمفروض الكود يبقى كده
If DCount("[الرقم_القومي_للطالب]", "التلاميذ", "[الرقم_القومي_للطالب]=[forms]![التلاميذ]![الرقم_القومي_للطالب]")

ولكنه لايعطي شىء فهل هذا بسبب
        للكود رقم 3022 الخاص بمنع القيم المكررة وجعله يظهر برساله معينه هل ده يلغى كود حضرتك trap اني عامل

وشكرا جزيلا

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