عبد الفتاح كيرة قام بنشر أغسطس 11, 2011 قام بنشر أغسطس 11, 2011 السلام عليكم لدى جدول به أسماء الطلاب وبه حقل رقم الفصل وبعد ترتيب الطلاب حسب المجموع أردنا توزيعهم على أربعة فصول أريد كودا أو أى طريقة أخرى للكتابة فى حقل رقم الفصل هكذا 1 2 3 4 ثم 1 2 3 4 وهكذا بدلا من كتابتها يدويا مع جزيل الشكر
عبد الفتاح كيرة قام بنشر أغسطس 11, 2011 الكاتب قام بنشر أغسطس 11, 2011 لأنى جعلت الموضوع فى مكانه الصحيح لم أتلق أى رد
ابوخليل قام بنشر أغسطس 12, 2011 قام بنشر أغسطس 12, 2011 اهلا ابا عمر هو في مكانه الصحيح ولكن لا ينتبه له وانتظارك هذا فيه وجه شبه من شهرنا الذي نحن فيه حيث ان الصيام فيه تذكير للغني لاخيه المحتاج . فتقبل الله طاعتك هذا مثال لتوزيع الطلاب على الفصول . لاحظ جدول الفصول المثال : للأخت زهرة غفر الله لنا ولها توزيع.rar
عبد الفتاح كيرة قام بنشر أغسطس 12, 2011 الكاتب قام بنشر أغسطس 12, 2011 أشكر لك صنيعك وكل عام أنتم بخير لكن الحق أن هذا الكود صعب الفهم Public Sub division(acTbl1 As String, Fld1 As String, Tbl2 As String, Fld2 As String, Num1 As Long, Num2 As Long, Optional DType As Byte = 0) Dim RC1 As Object, RC2 As Object, R As Long Set RC1 = CurrentDb.OpenRecordset(acTbl1) Set RC2 = CurrentDb.OpenRecordset(Tbl2) RC1.MoveFirst Do While Not (RC1.EOF) RC1.edit RC1.Fields(Fld1) = RC2.Fields(Fld2) RC1.Update RC1.MoveNext If DType = 1 Then R = R + 1 If R = Num2 Then RC2.MoveNext R = 0 End If Else RC2.MoveNext R = R + 1 If R = Num1 Then RC2.MoveFirst R = 0 End If End If If RC2.EOF Then RC2.MoveFirst Loop
عبد الفتاح كيرة قام بنشر أغسطس 13, 2011 الكاتب قام بنشر أغسطس 13, 2011 الأخ الفاضل أبا خليل لو تكرمتم بإدراج تعليق و لو بسيط على كل سطر بهذا الكود أكون شاكرا لك و جزاك الله خيرا لم أعتد استخدام شىء قبل فهمه أولا
ابوخليل قام بنشر أغسطس 13, 2011 قام بنشر أغسطس 13, 2011 اخي تسعدني خدمتك كنت اظن ان الفروقات لا تذكر بين الاكسس والاكسل خاصة في الوحدات النمطية 'ما بين القوسين اعلان عن متغيرات تمثل جدولين وحقلين وهو الترتيب الذي سيتم تطبيقه عند استدعاء الوحدة النمطية Public Sub division(acTbl1 As String, Fld1 As String, Tbl2 As String, Fld2 As String, Num1 As Long, Num2 As Long, Optional DType As Byte = 0) Dim RC1 As Object, RC2 As Object, R As Long 'الاعلان عن متغيرات Set RC1 = CurrentDb.OpenRecordset(acTbl1) 'أسند للكائن RC1 فتح الجدول acTbl1 لتمنكن من الإضافة إليه لاحقا Set RC2 = CurrentDb.OpenRecordset(Tbl2) 'أسند للكائن RC2 فتح الجدول Tbl2 لتمنكن من التعامل معه لاحقا RC1.MoveFirst 'الذهاب لأول سجل Do While Not (RC1.EOF) 'نفتح حلقة الدوران ( تنفيذ الكود التالي حتى آخر سجل ) RC1.edit 'تحرير الكائن RC1.Fields(Fld1) = RC2.Fields(Fld2) 'حقل الكائن الأول يساوي حقل الكائن الثاني RC1.Update 'تحديث RC1.MoveNext 'انتقال للسجل التالي If DType = 1 Then 'هذا المتغير اختياري يتم تجاهله في حال عدم تحقق الشرط R = R + 1 'عداد للسجلات If R = Num2 Then '( اذا كان عدد السجلات المحررة يساوي الرقم الثاني )'الرقم الثاني وهو يمثل عدد الطلاب في الشعبة RC2.MoveNext 'انتقال للسجل التالي من الجدول الثاني R = 0 'بفرض انتهت السجلات سنبدا بعدها العد من جديد End If ' نهاية الشرط Else 'والا يتم الانتقال للجدول الثاني RC2.MoveNext 'انتقال للسجل التالي R = R + 1 'عداد للسجلات If R = Num2 Then '( اذا كان عدد السجلات المحررة يساوي الرقم الاول )'الرقم الاول وهو يمثل عدد الشعب RC2.MoveFirst 'الذهاب لأول سجل من الجدول الثاني R = 0 'العد من جديد End If 'نهاية الشرط End If 'نهاية الشرط If RC2.EOF Then RC2.MoveFirst ' الذهاب للسجل الاول عند نهاية السجلات من الجدول الثاني Loop ' نهاية الحلقة Set RC1 = Nothing 'اغلاق الكائن لتحرير الذاكرة Set RC2 = Nothing 'اغلاق الكائن لتحرير الذاكرة End Sub
عبد الفتاح كيرة قام بنشر أغسطس 13, 2011 الكاتب قام بنشر أغسطس 13, 2011 الفاضل أبا خليل كفيت و وفيت جزاك الله خيرا أؤكد لك أن كثيرين سيستفيدون من هذه الأسطر بسبب هذه التعليقات القيمة وفقك الله لكل خير وجارى الدراسة و العمل
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.