الحلبي قام بنشر أغسطس 18 قام بنشر أغسطس 18 السلام عليكم مرفق مثال المطلوب عند ادخال مستخدم جديد وكان عدد المستخدمين اكثر من 3 (ثلاثة) ووظيفتم محاسب تظهر رسالة تقول "لا يمكن ادخال محاسب رابع ) الا بكلمة سر وتكون كلمة السر مثلا 123 اما وظيفة الكاشير فلا تحكم فى العدد جزاكم الله خيرا عدد المستخدمين.accdb
ابو جودي قام بنشر أغسطس 18 قام بنشر أغسطس 18 بسيطة جدا استحدم الكود التالى لمربع النص فى الحدث قبل التحديث على اعتبار ان مربع النص اسمه txtjop Private Sub txtjop_BeforeUpdate(Cancel As Integer) Dim db As DAO.Database Dim rs As DAO.Recordset Dim UserCount As Integer Dim PasswordInput As String Set db = CurrentDb() Set rs = db.OpenRecordset("SELECT COUNT(*) AS CountOfAccountants FROM tblUsers WHERE jop = 'محاسب'") UserCount = rs!CountOfAccountants If UserCount >= 3 And Me.txtjop.Value = "محاسب" Then PasswordInput = InputBox("لا يمكن إدخال محاسب رابع. يرجى إدخال كلمة السر:") If PasswordInput <> "123" Then MsgBox "كلمة السر غير صحيحة. لا يمكن إضافة محاسب رابع.", vbExclamation Cancel = True End If End If rs.Close Set rs = Nothing Set db = Nothing End Sub
الحلبي قام بنشر أغسطس 18 الكاتب قام بنشر أغسطس 18 34 دقائق مضت, ابو جودي said: بسيطة جدا لقد اخطأت فى التعير عند السؤال سامحنى استاذى الفاضل وعلى فكرة ان اخذت الكود فى مكتبتى لاستعمال اخر المطلوب هو : لا يمكن ادخال اى وظيفة فى حقل (jop) غير وظيفتين هما (محاسب ـ ومستخدم ) ولا يمكن اضافة اكثر من 3 مستخدمين وذلك ان يمكن اضافة اى وظيفة اخرى ويدخل على البرنامج المطلوب ان المستخدمين لا يكونوا اكثر من ثلاثة انا اسف جدا جدا وارجو قبول اعتذارى جزاك الله خير
ابو جودي قام بنشر أغسطس 18 قام بنشر أغسطس 18 طيب ما الافضل تعمل مربع سرد للوظائف بذلك لن يكون اصلا هناك الا الوظائف التى تسمح انت بها من خلال مربع السرد بالنسبة لعدد المستخدمين استخدم نفس الكود السابق ولكن بدون شروط بذلك لما يجد العدد ٣ تظهر الرسالة كل اللى تعمله شيل الجزء بتاع الشرط من الكود اللى هو ده WHERE jop = 'محاسب'" وبكده استخدم الكود مع اى مربع نص لان الشرط بقى عدد سجلات
الحلبي قام بنشر أغسطس 18 الكاتب قام بنشر أغسطس 18 15 دقائق مضت, ابو جودي said: وبكده استخدم الكود مع اى مربع نص لان الشرط بقى عدد سجلات لا معلش بدون استخدام مربع تحرير كيف لايسمح باضافة وظيقة غير المستخدم والمحاسب
ابو جودي قام بنشر أغسطس 18 قام بنشر أغسطس 18 Private Sub txtJob_BeforeUpdate(Cancel As Integer) If Me.txtJob.Value <> "محاسب" And Me.txtJob.Value <> "مستخدم" Then MsgBox "برجاء إدخال كلمة محاسب أو مستخدم فقط.", vbExclamation, "قيمة غير صحيحة" Cancel = True Me.txtJob.SetFocus End If End Sub
ابو جودي قام بنشر أغسطس 18 قام بنشر أغسطس 18 والكود ده كده لعدد السجلات بقه لو انا قاهم صح استخدمه فى اى مكان بمزاجك Private Sub txtjop_BeforeUpdate(Cancel As Integer) Dim db As DAO.Database Dim rs As DAO.Recordset Dim UserCount As Integer Dim PasswordInput As String Set db = CurrentDb() Set rs = db.OpenRecordset("SELECT COUNT(*) AS CountOfAccountants FROM tblUsers") UserCount = rs!CountOfAccountants If RecordCount >= 3 Then PasswordInput = InputBox("لا يمكن إدخال سجل رابع. يرجى إدخال كلمة السر:") If PasswordInput = "" Or PasswordInput <> "123" Then MsgBox "كلمة السر غير صحيحة. لا يمكن إضافة سجل رابع.", vbExclamation Cancel = True End If End If rs.Close Set rs = Nothing Set db = Nothing End Sub
الحلبي قام بنشر أغسطس 19 الكاتب قام بنشر أغسطس 19 استاذى الفاضل / @ابو جودي يمكن اكون وصلت السؤال غير واضح لحضرتك شوف استاذى هذا نموذج ادخال المستخدمين اريد فيه عند الادخال الاتى : اذا كانت الوظيفة غير كلمة محاسب او مستخدم تظهر رسالة تقول "يرجى ادخال الوظيف محاسب او مستخدم فقط " وكود حضرتك مصبوط جدا جدا فيمكن ادخال اى عدد من المحاسبين فقط (وظيفة المحاسب غير مقيدة بعدد السجلات) ولكن وظيفة المستخدم لا يكون اكثر من 3 فقط فى نفس الوقت اذا كان يريد اضافة مستخدم رابع تظهر رسالة بكلمة سر اذا كانت صح نضيف مستخدم رابع اما اذا كانت خطأ فيخرج من النموذج وايضا كود حضرتك مصبوط جدا جدا هذا كل الموضوع مع ملاحظة ان حقل الوظيفة اسمه jop وليس txtjop وحضرتك لو طبقت على المثال المرفق تلاحظ وجود اخطاء فى الكود معلش استاذى طول عمرى مغلبك معايا تحملنى قليلا لان الموظفين عندنا فى الشركة خصوصا فى فروع البيع يتلاعبون كثيرا جزاك الله خير
ابو جودي قام بنشر أغسطس 19 قام بنشر أغسطس 19 انا دوخت معاك يا دكتور ومش فاهم كويس يعنى حضرتك تريد الاتى : السماح فقط باستخدام "محاسب" أو "مستخدم". لا يمكن إدخال أكثر من 3 سجلات بوظيفة "مستخدم". يُسمح بعدد غير محدود من سجلات "محاسب". إذا تجاوز إجمالي عدد السجلات 3، يتم طلب كلمة المرور. لو انا كده فهمت صح يكون الكود Private Sub jop_BeforeUpdate(Cancel As Integer) If Me.jop.Value <> "محاسب" And Me.jop.Value <> "مستخدم" Then MsgBox "برجاء إدخال كلمة محاسب أو مستخدم فقط.", vbExclamation, "قيمة غير صحيحة" Cancel = True Exit Sub End If Dim db As DAO.Database Dim rs As DAO.Recordset Dim UserCount As Integer Dim AccountantCount As Integer Dim PasswordInput As String Set db = CurrentDb() Set rs = db.OpenRecordset("SELECT COUNT(*) AS CountOfUsers FROM tblUsers WHERE jop = 'مستخدم'") UserCount = rs!CountOfUsers rs.Close If Me.jop.Value = "مستخدم" And UserCount >= 3 Then MsgBox "لا يمكن إضافة أكثر من 3 مستخدمين بوظيفة مستخدم.", vbExclamation Cancel = True Exit Sub End If Set rs = db.OpenRecordset("SELECT COUNT(*) AS CountOfAll FROM tblUsers") UserCount = rs!CountOfAll rs.Close If UserCount >= 3 Then PasswordInput = InputBox("تجاوزت عدد السجلات 3. يرجى إدخال كلمة السر:") If PasswordInput = "" Or PasswordInput <> "123" Then MsgBox "كلمة السر غير صحيحة. لا يمكن إضافة سجل جديد.", vbExclamation Cancel = True Exit Sub End If End If Set rs = Nothing Set db = Nothing End Sub
الحلبي قام بنشر أغسطس 19 الكاتب قام بنشر أغسطس 19 7 دقائق مضت, ابو جودي said: إذا تجاوز إجمالي عدد السجلات 3، يتم طلب كلمة المرور. اذا تجاوز عدد السجلات لما تكون الوظيفة مستخدم لا يمكن الذيادة (يعنى اكثر من 3 بوظيفة مستخدم لازم ندخل كلمة المرور) لكن وظيفة المحاسب ادخل اى عدد سجلات ولا يطلب كلمة مرور
أفضل إجابة ابو جودي قام بنشر أغسطس 19 أفضل إجابة قام بنشر أغسطس 19 Private Sub jop_BeforeUpdate(Cancel As Integer) Dim db As DAO.Database Dim rs As DAO.Recordset Dim UserCount As Integer Dim PasswordInput As String Set db = CurrentDb() If Me.jop.Value <> "محاسب" And Me.jop.Value <> "مستخدم" Then MsgBox "برجاء إدخال كلمة محاسب أو مستخدم فقط.", vbExclamation, "قيمة غير صحيحة" Cancel = True Exit Sub End If If Me.jop.Value = "مستخدم" Then Set rs = db.OpenRecordset("SELECT COUNT(*) AS CountOfUsers FROM tblUsers WHERE jop = 'مستخدم'") UserCount = rs!CountOfUsers If UserCount >= 3 Then PasswordInput = InputBox("لقد تم إدخال 3 سجلات لمستخدمين. يرجى إدخال كلمة السر لإضافة مستخدم جديد:") If PasswordInput = "" Or PasswordInput <> "123" Then MsgBox "كلمة السر غير صحيحة. لا يمكن إضافة مستخدم جديد.", vbExclamation Cancel = True End If End If rs.Close Set rs = Nothing End If Set db = Nothing End Sub 1
الحلبي قام بنشر أغسطس 19 الكاتب قام بنشر أغسطس 19 الله الله عليك ايوه كده انت مكنتش مركز شوية معايا هذا هو المطلوب الله يبارك فيك وفى علمك ويسكنك فسيح جناته ويرزقك بالعلم يارب العب فى الاكسس براحتك وقل له افعل ولا تفعل هذا هو منهج الاستاذ الفاضل / محمد عصام ـ ابو جودى لك كل احترام وتقدير
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.