pingo22 قام بنشر يوليو 10 قام بنشر يوليو 10 السلام عليكم ورحمة الله وبركاته استأذنكم الاخوة الكرام اعمل على برنامج يحتوي على اكثر من صفحة نموذج واستخدم الكود التالي لكي يتم عند فتح اي صفحة نموذج تقوم باغلاق كل صفحات النماذج المفتوحة مسبقا المطلوب تعديل في الكود لكي احدد الصفحة التي اريد ان اغلقها وليس كل الصفحات المفتوحة ولكم خالص الشكر ()Private Sub Form_Current Dim FormCount As Integer Dim I As Integer FormCount = Forms.Count For I = FormCount - 1 To 0 Step -1 If Forms(I).Name <> FormName Then DoCmd.Close acForm, Forms(I).Name End If Next I End Sub
أفضل إجابة Moosak قام بنشر يوليو 10 أفضل إجابة قام بنشر يوليو 10 إليك الكود المعدل الذي سيسمح لك بإغلاق صفحات النموذج المحددة بدلاً من إغلاق جميع صفحات النماذج المفتوحة: Private Sub Form_Current() Dim FormCount As Integer Dim I As Integer Dim FormNamesToClose As Variant ' أضف أسماء صفحات النموذج التي تريد إغلاقها في هذه المصفوفة FormNamesToClose = Array("Form1", "Form2", "Form3") FormCount = Forms.Count For I = FormCount - 1 To 0 Step -1 If IsInArray(Forms(I).Name, FormNamesToClose) Then DoCmd.Close acForm, Forms(I).Name End If Next I End Sub Private Function IsInArray(ByVal stringToSearch As String, ByVal arr As Variant) As Boolean Dim i As Integer For i = LBound(arr) To UBound(arr) If arr(i) = stringToSearch Then IsInArray = True Exit Function End If Next i IsInArray = False End Function هنا كيف يعمل الكود المعدل: 1- مصفوفة FormNamesToClose تحتوي على أسماء صفحات النماذج التي تريد إغلاقها عند فتح النموذج الحالي. يمكنك إضافة أو إزالة أسماء النماذج من هذه المصفوفة حسب الحاجة. 2- دالة Form_Current() تقوم بالتمرير على جميع صفحات النماذج المفتوحة باستخدام خاصية Forms.Count. 3- لكل صفحة نموذج، يتحقق ما إذا كان اسم النموذج موجودًا في مصفوفة FormNamesToClose باستخدام دالة المساعدة IsInArray(). 4- إذا كان اسم النموذج موجودًا في مصفوفة FormNamesToClose، يتم استخدام بيان DoCmd.Close لإغلاق تلك صفحة النموذج. دالة IsInArray() هي دالة مساعدة تتحقق مما إذا كان السلسلة المعطاة موجودة في المصفوفة المقدمة. إنها تُرجع True إذا تم العثور على السلسلة، وFalse خلاف ذلك. بهذا الكود المعدل، يمكنك الآن تحديد صفحات النماذج التي تريد إغلاقها عند فتح النموذج الحالي، بدلاً من إغلاق جميع صفحات النماذج المفتوحة. ما يحتاج أخبرك من وين جبت الجواب 1
pingo22 قام بنشر يوليو 10 الكاتب قام بنشر يوليو 10 الاخ العزيز Moosak خالص شكري على مجهودك ولكن بعد محاولات عديدة الكود لا يعمل معي باشكل الصحيح وبالرغم من تحديد الصفاحات المطلوب اغلاقها تظل مفتوحة هل من الممكن اضافة اي تعديل على الكود؟؟؟
Moosak قام بنشر يوليو 10 قام بنشر يوليو 10 2 ساعات مضت, pingo22 said: بعد محاولات عديدة الكود لا يعمل معي باشكل الصحيح أرفق ملفك أخي @pingo22 🙂
pingo22 قام بنشر يوليو 10 الكاتب قام بنشر يوليو 10 الاخ العزيز والفاضل Moosak بعد محاولات اخرى تم بحمد الله حل المشكلة كل الشكر والتقدير والتحية لك على مجهودك وتعبك جعله الله في ميزان حسناتك... خالص شكري 1
Moosak قام بنشر يوليو 11 قام بنشر يوليو 11 15 ساعات مضت, pingo22 said: جعله الله في ميزان حسناتك... خالص شكري اللهم آمين .. وإياكم أخي العزيز 🙂🌹
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.