Bshar قام بنشر منذ 19 ساعات قام بنشر منذ 19 ساعات السلام عليكم ,, زملائي الاكابر اريد مساعده في التنقل بين السجلات فيي النموذج الفرعي (بدون امر Requery) لانه بيعمل مشاكل في الارقام وشكرا انا عملت طريقه بالتنقل Me.ek = Me.ek - 1 DoCmd.Requery -------- Me.ek = Me.ek - 1 DoCmd.Requery ولكن بتعمل مشاكل بالارقام عند التنقل او البحث مرفق test.accdb
Foksh قام بنشر منذ 10 ساعات قام بنشر منذ 10 ساعات (معدل) وعليكم السلام ورحمة الله وبركاته .. بعد الإطلاع مرتين على الملف المرفق وطريقة عملك عليه ، جرب الحدثين التاليين في الأزرار .. Private Sub a1_Click() Dim curID As Long Dim nxt As Variant If Nz(Me.ek, "") = "" Then curID = Me.no_rece + 1 Else curID = CLng(Me.ek) End If nxt = DMin("no_rece", "enar_dman", "no_rece > " & curID) If Not IsNull(nxt) Then Me.ek = nxt Me.Requery Else MsgBox "لا يوجد سجل تالي", vbInformation + vbMsgBoxRight, "" End If End Sub Private Sub a2_Click() Dim curID As Long Dim prv As Variant If Nz(Me.ek, "") = "" Then curID = Me.no_rece - 1 Else curID = CLng(Me.ek) End If prv = DMax("no_rece", "enar_dman", "no_rece < " & curID) If Not IsNull(prv) Then Me.ek = prv Me.Requery Else MsgBox "لا يوجد سجل سابق", vbInformation + vbMsgBoxRight, "" End If End Sub طبعاً قد تحتاج لزر "سجل جديد" إذا كان النموذج الحالي إدخال البيانات . وهذه الفكرة بدلاً من التكرار للحدثين في الزرين ،يمكن دمجهم في دالة واحدة والإستدعاء فقط من خلال الزرين يميز السابق والتالي :- Private Sub a1_Click() GoToRecord True End Sub Private Sub a2_Click() GoToRecord False End Sub Private Sub GoToRecord(isNext As Boolean) Dim curID As Long Dim newID As Variant Dim fld As String: fld = "no_rece" If Nz(Me.ek, "") = "" Then If isNext Then curID = Me(fld) + 1 Else curID = Me(fld) - 1 End If Else curID = CLng(Me.ek) End If If isNext Then newID = DMin(fld, "enar_dman", fld & " > " & curID) Else newID = DMax(fld, "enar_dman", fld & " < " & curID) End If If Not IsNull(newID) Then Me.ek = newID Me.Requery Else If isNext Then MsgBox "لا يوجد سجل تالي", vbInformation + vbMsgBoxRight, "" Else MsgBox "لا يوجد سجل سابق", vbInformation + vbMsgBoxRight, "" End If End If End Sub test.zip تم تعديل منذ 9 ساعات بواسطه Foksh إضافة فكرة تقلل التكرار ..
منتصر الانسي قام بنشر منذ 59 دقائق قام بنشر منذ 59 دقائق بالإضافة إلى ماذكره الأخ @Foksh يمكنك العمل برقم السجل بدلا من رقم الحساب مرفق لك مثالك بعد التعديل حيث قمت بإضافة مربع نص يظهر رقم السجل الحالي ويمكنك إدخال رقم السجل المطلوب للإنتقال إليه مباشرة بالإضافة إلى زري تنقل قمت بإنشائهما عن طريق المعالج بشكل طبيعي تحياتي test.accdb
الردود الموصى بها
انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد
يجب ان تكون عضوا لدينا لتتمكن من التعليق
انشئ حساب جديد
سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .
سجل حساب جديدتسجيل دخول
هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.
سجل دخولك الان