بوعبد الله محفوظ قام بنشر سبتمبر 10, 2016 قام بنشر سبتمبر 10, 2016 السلام عليكم ورحمة الله تعالى وبركاته عندي في النموذج زر الذهاب إلى الأمام زر الذهاب إلى الوراء أريد مثلا عند الضغط على زر الذهاب إلى الأمام أن بذهب إلى الأمام لكن بشرط معين فقمت بإدراج الكود التالي With Me.RecordsetClone .FindNext "[Opérateur] =" & [txtSave] If .NoMatch Then MsgBox "أنت الآن في السجل الأخير" Else Me.Bookmark = .Bookmark End If End With الكود يشتغل تمام إذا كان النموذج يفتح على أول سجل لكن لو جعلت النموذج يفتح على سجل جديد Private Sub Form_Open(Cancel As Integer) DoCmd.GoToRecord , , acNewRec End Sub وقمت بالضغط على زر الرجوع إلى الخلف تأتي الرسالة "أنت الآن في السجل الأول" وإذا قمت بالضغط على زر إلى الأمام يذهب مباشرة إلى السجل الثاني "طبعا حسب الشرط الموضوع" هل من حل بارك الله فيكم Next.zip
يوسف أحمد قام بنشر سبتمبر 10, 2016 قام بنشر سبتمبر 10, 2016 (معدل) و عليكم السلام و رحمة الله و بركاته اخي العزيز بو عبد الله غير الكود للزر المطلوب الى الكود التالي If Me.NewRecord Then DoCmd.GoToRecord , , acFirst MsgBox "انت الآن في السجل الأول" Else With Me.RecordsetClone .FindPrevious "[Opérateur] =" & [txtSave] If .NoMatch Then MsgBox "انت الآن في السجل الأول" Else Me.Bookmark = .Bookmark End If End With End If ارجو ان يكون هو ما تقصده بالتوفيق تم تعديل سبتمبر 10, 2016 بواسطه يوسف أحمد 3
بوعبد الله محفوظ قام بنشر سبتمبر 11, 2016 الكاتب قام بنشر سبتمبر 11, 2016 مشكور مشرفنا الغالي يوسف أحمد على الاهتمام لكن للاسف ليس هذا ما أريده ما اريده هو عند الضغط على زر إلى الوراء يرجع بي إلى السجل الأخير الموافق للشرط الذي وضعته
رمهان قام بنشر سبتمبر 11, 2016 قام بنشر سبتمبر 11, 2016 مشاركة مع الاستاذ القدير يوسف ابو احمد ضع السطر التالي في اول كود الزر الى الوراء If Me.NewRecord Then Me.RecordsetClone.FindLast "[Opérateur] =" & [txtSave]: Me.Bookmark = Me.RecordsetClone.Bookmark: Exit Sub ليصبح الكود كاملا Private Sub Previous_Click() If Me.NewRecord Then Me.RecordsetClone.FindLast "[Opérateur] =" & [txtSave]: Me.Bookmark = Me.RecordsetClone.Bookmark: Exit Sub With Me.RecordsetClone .FindPrevious "[Opérateur] =" & [txtSave] If .NoMatch Then MsgBox "ÃäÊ ÇáÂä Ýí ÇáÓÌá ÇáÃæá" Else Me.Bookmark = .Bookmark End If End With End Sub بالتوفيق طبعا باعتبار ان الرقم المراد البحث عنه موجود ! 1
بوعبد الله محفوظ قام بنشر سبتمبر 11, 2016 الكاتب قام بنشر سبتمبر 11, 2016 4 دقائق مضت, رمهان said: مشاركة مع الاستاذ القدير يوسف ابو احمد ضع السطر التالي في اول كود الزر الى الوراء If Me.NewRecord Then Me.RecordsetClone.FindLast "[Opérateur] =" & [txtSave]: Me.Bookmark = Me.RecordsetClone.Bookmark: Exit Sub ليصبح الكود كاملا Private Sub Previous_Click() If Me.NewRecord Then Me.RecordsetClone.FindLast "[Opérateur] =" & [txtSave]: Me.Bookmark = Me.RecordsetClone.Bookmark: Exit Sub With Me.RecordsetClone .FindPrevious "[Opérateur] =" & [txtSave] If .NoMatch Then MsgBox "ÃäÊ ÇáÂä Ýí ÇáÓÌá ÇáÃæá" Else Me.Bookmark = .Bookmark End If End With End Sub بالتوفيق الكود يعمل 100 % بارك الله فيك أستاذنا القدير رمهان 1
محمد ايمن قام بنشر سبتمبر 11, 2016 قام بنشر سبتمبر 11, 2016 استاذ رمهان هل من الممكن شرح هذا الكود Me.Bookmark = Me.RecordsetClone.Bookmark
يوسف أحمد قام بنشر سبتمبر 11, 2016 قام بنشر سبتمبر 11, 2016 لا شكر على واجب اخي العزيز بو عبد الله شكراً لك على التوضيح تفضل الكود بعد التعديل Dim rs As DAO.Recordset Set rs = Me.Recordset If Me.NewRecord Then rs.FindLast "[Opérateur] =" & [txtSave] Else rs.FindPrevious "[Opérateur] =" & [txtSave] If rs.NoMatch Then MsgBox "انت الآن في السجل الأول" Else Me.Bookmark = rs.Bookmark End If End If ارجو ان يكون هو المطلوب هذه المرة بالتوفيق 1
بوعبد الله محفوظ قام بنشر سبتمبر 11, 2016 الكاتب قام بنشر سبتمبر 11, 2016 3 دقائق مضت, يوسف أحمد said: لا شكر على واجب اخي العزيز بو عبد الله شكراً لك على التوضيح تفضل الكود بعد التعديل Dim rs As DAO.Recordset Set rs = Me.Recordset If Me.NewRecord Then rs.FindLast "[Opérateur] =" & [txtSave] Else rs.FindPrevious "[Opérateur] =" & [txtSave] If rs.NoMatch Then MsgBox "انت الآن في السجل الأول" Else Me.Bookmark = rs.Bookmark End If End If ارجو ان يكون هو المطلوب هذه المرة بالتوفيق وهو كذلك مشرفنا الغالي جزاك الله كل خير آآآآآآآآآآآآسف على إتعابك معنا في هذا اليوم المبارك عيدك مبارك
يوسف أحمد قام بنشر سبتمبر 11, 2016 قام بنشر سبتمبر 11, 2016 (معدل) اعتذر لم اشاهد الحل المقدم من قبلك استاذنا العزيز رمهان .. ولكن زيادة الخير بركة ان شاء الله ابداً لا يوجد تعب اخي العزيز بو عبد الله .. شرف لي المشاركة معكم بارك الله فيك تم تعديل سبتمبر 11, 2016 بواسطه يوسف أحمد 1
رمهان قام بنشر سبتمبر 11, 2016 قام بنشر سبتمبر 11, 2016 منذ ساعه, محمد ايمن said: استاذ رمهان هل من الممكن شرح هذا الكود Me.Bookmark = Me.RecordsetClone.Bookmark ابشر استاذ محمد وياذن الله استاذنك لاحقا وبالتفصيل
قلم-الاكسل(عبدالعزيز) قام بنشر سبتمبر 13, 2016 قام بنشر سبتمبر 13, 2016 شكرا ع الموضوع وبوركتم فعلا مهار محترفه من محترفين
رمهان قام بنشر سبتمبر 13, 2016 قام بنشر سبتمبر 13, 2016 في 9/11/2016 at 18:04, محمد ايمن said: استاذ رمهان هل من الممكن شرح هذا الكود Me.Bookmark = Me.RecordsetClone.Bookmark اخي الاستاذ ايمن في قراءة الكتب يتم وضع علامة عند السطر او الصفحة المراد الرجوع لها وهي قريبة لحد ما الى عمل ال bookmark فكاني اقول ضع الموشر بسجلات النموذج كما هو المؤشر لدى سجلات recodsetclone فانت تبحث وتذهب قدما ورجوعا في سجلات ا recordsetclone وعندما تستقر عند سجل معين تريد ان النموذج يظهر هذا السجل فتشير له بخاصية ال bookmark للنموذج ولابد ان تكون القيمة مناسبة فحتما سنسند قيمة ال bookmark ل recordsetclone لخاصية ال bookmark للنموذج وهنا سيظهر السجل الحالي في ال recordsetclone وهنا اوضح شي ما : كائن recodsetclone للنموذج ما هو الا كائن من نوع recordset وجميع خصائص وطرق كائن ال recordset يمكن تطبيق مع recodsetclone اتمنى ان الشرح مفهوم تحياتي 4
بوعبد الله محفوظ قام بنشر سبتمبر 15, 2016 الكاتب قام بنشر سبتمبر 15, 2016 (معدل) في 9/11/2016 at 15:49, رمهان said: طبعا باعتبار ان الرقم المراد البحث عنه موجود ! لقد واجهتني هذه المشكلة الآن ولم أجد لها أي حل حيث إذا كان الجدول لا يحتوي على أي قيمة توافق القيمة txtSave التي في النموذج يقوم بعرض معلومات أخرى لا تطابق الشرط ثم بعد ذلك تظهر الرسالة "أنت الآن في السجل الأول" جربت الكود التالي لكن دائما ما أتلقى الرسالة "لا توجد معلومات لعرضها" سواء وجدت معلومات مطابقة أو لم توجد Dim rs As Recordset Dim criteria As String Set rs = CurrentDb.OpenRecordset("tblRealisation", dbOpenSnapshot, dbReadOnly) criteria = "[Opérateur] =" & Forms!tblRealisation![txtSave] rs.FindPrevious criteria If rs.NoMatch = True Then MsgBox "لا توجد معلومات لعرضها", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, "رسالة تنبيه" Exit Sub End If ملاحظة: واجهتني نفس المشكلة مع كود أستاذنا يوسف أحمد هل من حل لهذه المعضلة بارك الله فيكم تم تعديل سبتمبر 15, 2016 بواسطه بوعبد الله محفوظ
يوسف أحمد قام بنشر سبتمبر 15, 2016 قام بنشر سبتمبر 15, 2016 اكتب من الموبايل.... اعمل جملة شرطيه if احسب فيها السجلات التي تطابق الشرط باستخدام الداله dcount ضع الكود السابق اذا كان ناتج الجمله اكبر من صفر اما في else تضع رساله تبلغك بعدم وجود سجلات تطابق الشرط و تخرج من الاجراء exit sub سيناريو فقط لم استطع وضع كود من الموبايل بالتوفيق 2
رمهان قام بنشر سبتمبر 15, 2016 قام بنشر سبتمبر 15, 2016 (معدل) هذا تطبيق لكلام الاستاذ يوسف انظر اول سطر وللزر الوراء Private Sub Previous_Click() If DCount("*", "tblRealisation", "[Opérateur] =" & [txtSave]) = 0 Then MsgBox ("no records matched"): Exit Sub If Me.NewRecord Then Me.RecordsetClone.FindLast "[Opérateur] =" & [txtSave]: Me.Bookmark = Me.RecordsetClone.Bookmark: Exit Sub With Me.RecordsetClone .FindPrevious "[Opérateur] =" & [txtSave] If .NoMatch Then MsgBox "أنت الآن في السجل الأول" Else Me.Bookmark = .Bookmark End If End With End Sub وهناك تنبيه اخر اخ ابو عبدالله لوكنت في السجل الثاني من النموذج ثم كتبت في مربع البحث 392 ثم نقرت للامام ستحصل على السجل صاحب الكود 65 ولن تعود ل 63 وهو يطابق الشرط بالتوفيق تم تعديل سبتمبر 15, 2016 بواسطه رمهان 1
بوعبد الله محفوظ قام بنشر سبتمبر 15, 2016 الكاتب قام بنشر سبتمبر 15, 2016 أستاذنا يوسف أحمد بارك الله فيك ورزقك من فضله وشكرا لاهتمامك البالغ وأنا في غاية الخجل لجعلك تكتب من الموبايل أستاذنا رمهان لا أجد من الكلمات ما أعبر به عن امتناني فجزاك الله كل خير وزادك من علمه بارك الله فيكما ورفع قدركما في الدارين الكود شغال 100 % 1
رمهان قام بنشر سبتمبر 15, 2016 قام بنشر سبتمبر 15, 2016 اخينا ابو عبدالله اسمح لي ان ابدي رايي في الاكواد السابقة وخصوصا قي اول مشاركة لك هذه الاكواد ذكرتني ببداياتي ومع الفيجول بيسك 4 هذه الاكواد فجول بيسكية بحته او ادق هي dao بحته فهل انت قادم للاكسيس من الفيجول بيسك ؟؟؟؟؟؟؟؟ ترى المحللين لديهم فراسة !!! مارايك ان اعمل لك اول مشاركة ولكن باكسس بحت ؟ وستلاحظ السهولة والفرق! وسيكون السناريو كالتالي: 1. يكتب المستخدم الرقم في المربع ثم انتر فتفلتر النموذج على هذه السجلات فقط 2. سيتم التنقل في لبيانات المفلتره بطريقة عادية واوامر معروفة سواء للخلف او للامام 3.عند مسح البحث ثم انتر تظهر جميع البيانات بالتوفيق 3
بوعبد الله محفوظ قام بنشر سبتمبر 16, 2016 الكاتب قام بنشر سبتمبر 16, 2016 مشكوووووووووووووور أستاذنا الكريم رمهان هذا عرض مغري لا يسعني رفضه وأنا في أتم الاستعداد للتعلم إذا سمحت سأرسل لك القاعدة التي أشتغل عليها وإذا توفر لك الوقت أرجوا أن تلقي نظرة عليها لا تنسى الضغط على shift عند الدخول
رمهان قام بنشر سبتمبر 16, 2016 قام بنشر سبتمبر 16, 2016 اخي ابو عبدالله العرض يشمل فقط: 15 ساعات مضت, رمهان said: مارايك ان اعمل لك اول مشاركة ولكن باكسس بحت ؟ وستلاحظ السهولة والفرق! واستسمحك بالتطبيق على ملف اول مشاركة وبعدها نشوف التعديلات الاخرى وذلك لضيق وقتي وكذلك حتى نتاكد ان التغيير مجدي لك فعليا ولا يكون هناك هدر في وقتنا جميعا لي عودة في اقرب فرصة بالتطبيق والتعديل تحياتي
محمد ايمن قام بنشر سبتمبر 16, 2016 قام بنشر سبتمبر 16, 2016 (معدل) اذا سمح لي استاذي رمهان باضافة مرفق يعتمد على اكواد SQL في البحث و التصفية اخي الكريم عند فتح النموذج تكون كل البيانات موجودة ثم نطبق الكود الذي اقترحه استاذنا رمهان 17 ساعات مضت, رمهان said: 1. يكتب المستخدم الرقم في المربع ثم انتر فتفلتر النموذج على هذه السجلات فقط 2. سيتم التنقل في لبيانات المفلتره بطريقة عادية واوامر معروفة سواء للخلف او للامام 3.عند مسح البحث ثم انتر تظهر جميع البيانات سؤال جانبي : هل لغتك الفرنسية جيدة ؟؟ Next2.rar تم تعديل سبتمبر 16, 2016 بواسطه محمد ايمن 3
رمهان قام بنشر سبتمبر 16, 2016 قام بنشر سبتمبر 16, 2016 كفيت ووفيت استاذ محمد ايمن وهذه بطريقة الفلترة : Private Sub txtSave_AfterUpdate() If IsNull(Me.txtSave) Then Me.FilterOn = False: Exit Sub Me.Filter = "[Opérateur] =" & [txtSave] Me.FilterOn = True End Sub وتظل ازرار التنقل بكود الاستاذ محمد ايمن كماهي وهي فعلا ماكنت اقصده من اوامر سهلة 6 ساعات مضت, محمد ايمن said: اسؤال جانبي : هل لغتك الفرنسية جيدة ؟؟ للاسف استاذ محمد ولا حتى الاحرف !! تحياتي للجميع 2
محمد ايمن قام بنشر سبتمبر 16, 2016 قام بنشر سبتمبر 16, 2016 3 دقائق مضت, رمهان said: كفيت ووفيت استاذ محمد ايمن من بعدك استاذنا الكريم 1
رمهان قام بنشر سبتمبر 16, 2016 قام بنشر سبتمبر 16, 2016 6 ساعات مضت, محمد ايمن said: سؤال جانبي : هل لغتك الفرنسية جيدة ؟؟ اعتقد ان السؤال موجه لك اخينا ابو عبدالله ؟ واعتقد انه نعم حيث اخينا ابو عبدالله من الجزائر ! تحياتي للجميع
بوعبد الله محفوظ قام بنشر سبتمبر 18, 2016 الكاتب قام بنشر سبتمبر 18, 2016 السلام عليكم ورحمت الله تعالى وبركاته أشكر الجميع على بالغ اهتمامه وأقدم أسفي على تأخري في الرد أستاذنا رمهان آآآآسفي على طمعي أنا في انتظار التطبيق أستاذنا محمد أيمن أشكر لك اهتمامك و مشركتنا بعلمك وأنا في انتظار المزيد "سأقوم بتجريب الكود وأوافيك بالنتيجة" أما بخصوص اللغة الفرنسية فبين وبينها ثأر قديم ولغتي الإنكليزية أحسن منها بكثير لكن استطيع متابعة الدورات التعليمة باللغة الفرنسية خاصة التقنية منها أما إذا كنت تريد شيء باللغة الفرنسية فأعرف من يمكن أن يساعد 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.