logo

لوحة التميز الأسبوعي
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
العضو المتميز المشرف المتميز المراقب المتميز المدير المتميز الموضوع المتميز القسم المتميز
صلاح الصغير لا تميز خلال هذه الفترة-- لا تميز خلال هذه الفترة Yasser Elaraby كود نسخ البيانات من ملفات اكسيل مغلقة اكسيل اسئله واجابات



أهلا وسهلا بك زائرنا الكريم في أكاديمية الصقر للتدريب، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .





27-08-2017 08:53 صباحاً
بسم الله الرحمن الرحيم


99898794898
اليوم نقدم لكم كود للتسهيل على الاخوة العاملين بالتربية والتعليم
وهو كود لاستخراج حالة الطالب
ناجح او دور ثان اضافة لذلك مواد الرسوب
الكود يحتاج الى تحديد الثوابت الموجودة بالكود
وتم توضيح مكان التعديلات بالكود حسب توزيعات الملف
الكود
CODE

Sub YASSER_ELARABY()
'YASSER_ELARABY
'26-9-2016
    Dim ARR
    Dim ARRY
    Dim ARRYS
    Dim ALL_LESS As String
    Const STATUS As Byte = 101    'عمود الحالة ناجح او دور ثان
    Const NOTES As Byte = 102  ' عمود الملاحظات عمود المواد او منقول للصف ا لاخر
    Const GENDER As Byte = 112  ' عمود الجنس ذكر او انثى
    '_____________________________________________________
    Const LESS_ROW As Byte = 6  'صف الدرجة الصغرى
    Const NAM_ROW As Byte = 2    'صف اسماء المواد
    Const NAME_FIRST As Byte = 7  ' اول صف لاسماء الطلاب
    Const NAME_LAST As Long = 206 + NAME_FIRST  ' عدد الطلاب
    '_____________________________________________________
    ARR = Array(9, 18, 27, 36, 46, 52, 54, 59, 64, 69, 78)  ' اعمدة اختبار الفصل الدارسي الثاني  لجميع المواد
    ARRY = Array(13, 22, 31, 40, 51, 52, 57, 62, 67, 72, 82)  'اعمدة الدرجة النهائية لجميع المواد
    ARRYS = Array(5, 14, 23, 32, 41, 52, 53, 58, 63, 68, 74)  'اعمدة اسماء كل المواد
    '_____________________________________________________
    With Sheet2 'اسم الشيت الموجود به البيانات
    For R = NAME_FIRST To NAME_LAST
        For X = 0 To UBound(ARR)
            On Error Resume Next
            Application.ScreenUpdating = False
            If ARR(X) = 46 Then
                If Val(.Cells(R, ARR(X))) + Val(.Cells(R, ARR(X) + 1)) < Val(.Cells(LESS_ROW, ARR(X))) Or .Cells(R, ARR(X)) = "غ" Or .Cells(R, ARR(X) + 1) = "غ" Then
                    ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " - "
                    GoTo 86
                Else
                    GoTo 86
                End If
            End If
            If .Cells(R, ARR(X)) < .Cells(LESS_ROW, ARR(X)) Or .Cells(R, ARR(X)) = "غ" _
               Or .Cells(R, ARRY(X)) < .Cells(LESS_ROW, ARRY(X)) Or .Cells(R, ARRY(X)) = "غ" Then
                ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " - "
            End If
86      Next X
        '_____________________________________________________

        If ALL_LESS = "" Then
            If .Cells(R, GENDER) = 1 Then .Cells(R, STATUS) = "ناجح "
            If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "ناجحة "
            If .Cells(R, GENDER) = 1 Then .Cells(R, 102) = "ومنقول " & INFO.Range("B14")
            If .Cells(R, GENDER) = 2 Then .Cells(R, 102) = "ومنقولة " & INFO.Range("B14")
        ElseIf ALL_LESS <> "" Then
            If .Cells(R, GENDER) = 1 Then .Cells(R, STATUS) = "له دور ثان في"
            If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "لها دور ثان في"
            .Cells(R, 102) = Left(ALL_LESS, Len(ALL_LESS) - 2)
            ALL_LESS = Empty
        End If
    Next R
    End With
    Application.ScreenUpdating = True
End Sub



كما هو موضح اماكن التعديل بالكود

لتحميل الملف اضغط هنا

تعديل اخر للكود ليتماشى مع نظام المدارس اكثر

التعديل يشمل الرسوب باقل من ثلث الدرجة للفصل الدراسي الثاني
واذا تغيب الطالب في كل المواد او مجموع كل المواد صفر يصبح الطالب غائب
الكود

[p]
<code>
CODE
 Sub YASSER_ELARABY()  
 'YASSER_ELARABY  
   Dim ARR  
   Dim ARRY  
   Dim ARRYS  
   '___________________________________________  
   Dim R As Long  
   Dim X As Long  
   Dim XX As Byte  
   Dim ALL_LESS As String  
   '___________________________________________  
   Const STATUS As Byte = 101  'عمود الحالة ناجح او دور ثان  
   Const NOTES As Byte = 102 ' عمود الملاحظات عمود المواد او منقول للصف ا لاخر  
   Const GENDER As Byte = 112 ' عمود الجنس ذكر او انثى  
   '_____________________________________________________  
   Const LESS_ROW As Byte = 6 'صف الدرجة الصغرى  
   Const NAM_ROW As Byte = 2  'صف اسماء المواد  
   Const NAME_FIRST As Byte = 7 ' اول صف لاسماء الطلاب  
   Const NAME_LAST As Long = 206 + NAME_FIRST ' عدد الطلاب  
   '_____________________________________________________  
   ARR = Array(9, 18, 27, 36, 46, 52, 54, 59, 64, 69, 78) ' اعمدة اختبار الفصل الدارسي الثاني لجميع المواد  
   ARRY = Array(13, 22, 31, 40, 51, 52, 57, 62, 67, 72, 82) 'اعمدة الدرجة النهائية لجميع المواد  
   ARRYS = Array(5, 14, 23, 32, 41, 52, 53, 58, 63, 68, 74) 'اعمدة اسماء كل المواد  
   '_____________________________________________________  
   With Sheet2  'اسم شيت البيانات  
     Application.ScreenUpdating = False  'الغاء تحديث الشاشة  
     Application.Calculation = xlManual  ' ايقاف الحساب التلقائي  
     For R = NAME_FIRST To NAME_LAST  ' حلقة تكرارية تبدأ بأول اسم طالب الى اخر اسم  
       For X = 0 To UBound(ARR)  ' حلقة تكرارية تبدأ من الصفر الى اقصى مصفوفة اعمدة اختبار الفصل الدارسي الثاني  
         On Error Resume Next  
         '____________________________________________________  
         'يتم حساب عدد ا لمواد المتغيب بها الطالب او درجتها صفر ويتم وضع عدد المواد في المتغير اكس اكس  
         'اذا وصل عدد المواد الى 11 اصبح الطالب متغيب  
         If .Cells(R, ARRY(X)) = 0 Or .Cells(R, ARRY(X)) = "غ" Then  
           XX = XX + 1  
         End If  
         '____________________________________________________  
         'هذا الجزء خاص بمادة العلوم تحديدا الفصل الدراسي الثاني لانه مقسم على عمودين فتم اضافة هذا الجزء ليتم معالجة هذه المرحلة  
         If ARR(X) = 46 Then  
           'لايوجد اختلاف بين هذا الكود وبين الكود الموجود بالاسفل  
           If Val(.Cells(R, ARR(X))) + Val(.Cells(R, ARR(X) + 1)) < Val(.Cells(LESS_ROW, ARR(X))) Or .Cells(R, ARR(X)) = "غ" Or .Cells(R, ARR(X) + 1) = "غ" Then  
             ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " لثلث الدرجة " & " - ": GoTo 86  
             GoTo 86 'هنا يتم تخطى عمل الكود بالاسفل حتى لايتم معالجة مادة العلوم مرة اخرى  
           Else  
             GoTo 86 'وهنا ايضا يتم تخطى مادة العلوم الى المادة الاخرى  
           End If  
         End If  
         'هنا يتم مقارنة المواد بالدرجة الصغرى الخاصة الفصل الدارسي الثاني في اول الكود او اذا كانت غياب يتم اضافة اسم المادة من صف المواد الى المتغير  
         'ALL_LESS  
         'او مقارنة الدرجة النهائية لكل مادة بالدرجة الصغرى لها او اذا كانت غياب اذا تحقق الشرط فيتم اضافة المادة الى المتغير  
         'ALL_LESS  
         '______________________________________________________  
         If .Cells(R, ARR(X)) < .Cells(LESS_ROW, ARR(X)) Or .Cells(R, ARR(X)) = "غ" Then  
           ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " لثلث الدرجة " & " - ": GoTo 86  
         End If  
         If .Cells(R, ARRY(X)) < .Cells(LESS_ROW, ARRY(X)) Or .Cells(R, ARRY(X)) = "غ" Then  
           ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " - "  
         End If  
         '______________________________________________________  
 86     Next X  'الذهاب الى المادة الاخرى لاعادة تطبيق الكود مرة اخرى حتى انتهاء جميع المواد  
       'اذا كان المتغير اكس اكس بيساوي عدد المواد اذن الطالب متغيب  
       If XX = 11 Then ALL_LESS = "غياب ": XX = 0  
       '_____________________________________________________  
       'هنا بعد اكتمال الكود يتم عمل شرط للمتغير  
       'ALL_LESS  
       'اذا كان المتغير فارغ اي لم يتم اضافة اي مواد به اذا الطالب ناجح  
       If ALL_LESS = "" Then  
         If .Cells(R, GENDER) = 1 Then .Cells(R, STATUS) = "ناجح "  'اذا كان نوع الطالب ذكر يتم وضع ناجح  
         If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "ناجحة "  'اذا كانت انثى يتم وضع ناجحه  
         If .Cells(R, GENDER) = 1 Then .Cells(R, NOTES) = "ومنقول " & INFO.Range("B14")  'ويتم وضع في الملاحظات منقول الى ويتم جلب الصف من صفحة الانفو  
         If .Cells(R, GENDER) = 2 Then .Cells(R, NOTES) = "ومنقولة " & INFO.Range("B14")  'مثل ماسبق  
         'اما اذا كان المتغير يحمل اي بيانات لمواد يصبح الطالب له دور ثان  
       ElseIf ALL_LESS <> "" Then  
         If .Cells(R, GENDER) = 1 Then .Cells(R, STATUS) = "له دور ثان في"  'مثل ما سبق بخصوص النوع  
         If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "لها دور ثان في"  '  
         .Cells(R, NOTES) = Left(ALL_LESS, Len(ALL_LESS) - 2)  'هنا يتم وضع قيمة المتغير اي المواد في خلية الملاحظات  
         ALL_LESS = Empty  'تفريغ المتغير لاعادة تعبئة اسم طالب اخر  
       End If  
       '_____________________________________________________  
     Next R  'الذهاب الى الصف التالي حتى انتهاء عدد الطلاب  
   End With  
   Application.ScreenUpdating = True  'اعادة تحديث الشاشة  
   Application.Calculation = xlAutomatic  'تشغيل الحساب التلقائي  
 End Sub  

</code>
</pre>

لتحميل الملف اضغط هنا
اعداد / ياسر العربي

اعادة نشر للفائدة
 
 
  استخراج حالة الطالب ومواد الرسوب.rar   تحميل rar مرات التحميل :(35)
الحجم :(91.106) KB
  استخراج حالة الطالب ومواد الرسوب معدل YASSER.rar   تحميل rar مرات التحميل :(36)
الحجم :(92.84) KB




توقيع :Yasser Elaraby
663013020

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  27-08-2017 09:06 صباحاً   [1]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
الاستاذ المحترم ياسر العربي
ربنا يبارك فيك .. كود ولااروع



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  27-08-2017 09:19 صباحاً   [2]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
اذا قص الطالب في امتحان الترم التاني فبذكر مثلا عربي لثلث الدرجه
واذا قصر في المجموع الكلي للمواد فنذكر ( المجموع لنصف الدرجه ؟
اين هذه الجزئيه من الكود من فضلك ؟



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  27-08-2017 09:38 صباحاً   [3]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1335
رصيد العضو : 4
الجنس :
الدعوات : 13
قوة السمعة : 10086
الاعجاب : 71
موقعي : زيارة موقعي
جزاكم الله خيرا اخي الكريم ناصر فمعك وبمعلوماتك تم انشاء هذا الكود كما الحال لغيره
هل تقصد انك تريد اضافة شرط معين للمجموع وهو اذا كان المجموع اقل من النصف يظهر مع مواد الرسوب المجموع لنصف الدرجة
هو حاليا يعامل نفس معاملة المواد ويعطى المجموع لثلث الدرجة أيضا ؟؟؟؟؟
من الممكن ان نضيف شرط خاص بالمجموع فقط
وضح المطلوب وان شاء الله نقوم بالتعديل عليه
تحياتي
81



توقيع :Yasser Elaraby
663013020

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  27-08-2017 10:12 صباحاً   [4]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
ربنا يحفظك استاذ ياسر العربي
هل تقصد انك تريد اضافة شرط معين للمجموع وهو اذا كان المجموع اقل من النصف يظهر مع مواد الرسوب المجموع لنصف الدرجة ؟ اقتباس

نعم هذا ما اقصده .
جزاكم الله خيرا



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  27-08-2017 10:14 صباحاً   [5]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10536
رصيد العضو : 5
الجنس :
تاريخ الميلاد : 1-10-1978
الدعوات : 24
قوة السمعة : 36778
الاعجاب : 194
بارك الله فيك يا عربي
يرجى رفع الملفات على المنتدى وليس على رابط خارجي ..
تقبل وافر تقديري واحترامي




look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 10:14 صباحاً   [6]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
المشاركة الأصلية كتبت بواسطة: Yasser Elaraby تريد اضافة شرط معين للمجموع وهو اذا كان المجموع اقل من النصف يظهر مع مواد الرسوب المجموع لنصف الدرجة

من الممكن ان نضيف شرط خاص بالمجموع فقط
ان شاء الله نقوم بالتعديل عليه
تحياتي81
همتك معانا ياباشا



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 10:32 صباحاً   [7]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1335
رصيد العضو : 4
الجنس :
الدعوات : 13
قوة السمعة : 10086
الاعجاب : 71
موقعي : زيارة موقعي
تفضل اخي الكريم ناصر جرب التعديل المرفق
attachاستخراج حالة الطالب ومواد الرسوب معدل YASSER.rar
تحياتي
 
 
  استخراج حالة الطالب ومواد الرسوب معدل YASSER.rar   تحميل rar مرات التحميل :(23)
الحجم :(93.563) KB




توقيع :Yasser Elaraby
663013020

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 02:10 مساءً   [8]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
جزاك الله كل خير وبارك فيك يارب استاذ ياسر العربي
===
الرقم 52 الموجود داخل الكود يعني رقم عمود المجموع
والرقم 46 و 86 ماذا يعنون ؟
وهل ممكن نضع رقم عمود المجموع وعمود ( مجموع العملي والتحريري ) مثل هذه الفكره الرائعه منكم
CODE
    Const STATUS As Byte = 101    'عمود الحالة ناجح او دور ثان



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 02:11 مساءً   [9]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
لتكون كل المتغيرات اعلا الكود فقط



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 02:57 مساءً   [10]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1335
رصيد العضو : 4
الجنس :
الدعوات : 13
قوة السمعة : 10086
الاعجاب : 71
موقعي : زيارة موقعي
بالفعل تستطيع وضع ثابت لرقم المجموع مثل ما ذكرت
CODE
Const STATUS As Byte = 101&nbsp;<br />

كل ما عليك هو تغيير الاسم STATUS الى اسم يشير الى المجموع وليكن TOTAL
وبعدها تضع الاسم TOTAL مكان 52 بالكود
اما بخصوص 46 فهي بخصوص مادة العلوم نظرا لاختلافها عن المواد الاخرى
والرقم 86 ما هو الا رقم داخل الكود يتم الذهاب اليه في حالات معينه بالكود وليس له صلة باي مواد
تحياتي



توقيع :Yasser Elaraby
663013020

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  28-08-2017 07:07 مساءً   [11]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
مازلنا في مرحله اجراء التجارب مع تاكدي ان شاء الله من جوده الكود
جزاك الله كل خير استاذ ياسر العربي
CODE
Sub YASSER_ELARABY()
'تم هذا الكود بواسطه المحترم ياسر العربي
'فائده هذا الكود هو استخراج حاله الطالب من
'ناجح او دور تان وكذلك استخراج مواد الدور لتاني
'تم في 28/8/2016
    Dim ARR
    Dim ARRY
    Dim ARRYS
    '___________________________________________
    Dim R As Long
    Dim X As Long
    Dim XX As Byte
    Dim ALL_LESS As String
    '___________________________________________
    Const TOTAL  As Byte = 52    'عمود المجموع
    Const Since  As Byte = 109    'عمود مجموع العلوم
    Const STATUS As Byte = 101    'عمود الحالة ناجح او دور ثان
    Const NOTES As Byte = 102  ' عمود الملاحظات عمود المواد او منقول للصف ا لاخر
    Const GENDER As Byte = 112  ' عمود الجنس ذكر او انثى
    '_____________________________________________________
    Const LESS_ROW As Byte = 6  'صف الدرجة الصغرى
    Const NAM_ROW As Byte = 2    'صف اسماء المواد
    Const NAME_FIRST As Byte = 7  ' اول صف لاسماء الطلاب
    Const NAME_LAST As Long = 206 + NAME_FIRST  ' عدد الطلاب
    '_____________________________________________________
    ARR = Array(9, 18, 27, 36, 109, 54, 59, 64, 69, 78)   ' اعمدة اختبار الفصل الدارسي الثاني  لجميع المواد
    ARRY = Array(13, 22, 31, 40, 51, 57, 62, 67, 72, 82)   'اعمدة الدرجة النهائية لجميع المواد
    ARRYS = Array(5, 14, 23, 32, 41, 53, 58, 63, 68, 74)   'اعمدة اسماء كل المواد
    '_____________________________________________________
    With Sheet2    'اسم شيت البيانات
        Application.ScreenUpdating = False    'الغاء تحديث الشاشة
        Application.Calculation = xlManual    ' ايقاف الحساب التلقائي
        For R = NAME_FIRST To NAME_LAST    ' حلقة تكرارية تبدأ  بأول اسم طالب الى اخر اسم
            For X = 0 To UBound(ARR)    ' حلقة تكرارية تبدأ من الصفر الى اقصى مصفوفة اعمدة اختبار الفصل الدارسي الثاني
                On Error Resume Next
                '____________________________________________________
                'يتم حساب عدد ا لمواد المتغيب بها الطالب او درجتها صفر ويتم وضع عدد المواد في المتغير اكس اكس
                'اذا وصل عدد المواد الى 11 اصبح الطالب متغيب
                If .Cells(R, ARRY(X)) = 0 Or .Cells(R, ARRY(X)) = "غ" Then
                    XX = XX + 1
                End If
                '____________________________________________________
                'هذا الجزء خاص بمادة العلوم تحديدا الفصل الدراسي الثاني لانه مقسم على عمودين فتم اضافة هذا الجزء ليتم معالجة هذه المرحلة
                If ARR(X) = Since Then
                    'لايوجد اختلاف بين هذا الكود وبين الكود الموجود بالاسفل
                    If Val(.Cells(R, ARR(X))) + Val(.Cells(R, ARR(X) + 1)) < Val(.Cells(LESS_ROW, ARR(X))) Or .Cells(R, ARR(X)) = "غ" Or .Cells(R, ARR(X) + 1) = "غ" Then
                        ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " لثلث الدرجة " & " - ": GoTo 86
                        GoTo 86  'هنا يتم تخطى عمل الكود بالاسفل حتى لايتم معالجة مادة العلوم مرة اخرى
                    Else
                        GoTo 86  'وهنا ايضا يتم تخطى مادة العلوم الى المادة الاخرى
                    End If
                End If
                'هنا يتم مقارنة المواد بالدرجة الصغرى الخاصة الفصل الدارسي الثاني في اول الكود او اذا كانت غياب يتم اضافة اسم المادة من صف  المواد الى المتغير
                'ALL_LESS
                'او  مقارنة الدرجة النهائية لكل مادة بالدرجة الصغرى لها او اذا كانت غياب اذا تحقق الشرط فيتم اضافة المادة الى المتغير
                'ALL_LESS
                '______________________________________________________
                If .Cells(R, ARR(X)) < .Cells(LESS_ROW, ARR(X)) Or .Cells(R, ARR(X)) = "غ" Then
                    ALL_LESS = ALL_LESS & .Cells(NAM_ROW, ARRYS(X)) & " لثلث الدرجة " & " - ":    'GoTo 86
                End If
                '_______________________________________________________
86          Next X    'الذهاب الى المادة الاخرى لاعادة تطبيق الكود مرة اخرى حتى انتهاء جميع المواد
            'اذا كان المتغير اكس اكس بيساوي عدد المواد اذن الطالب متغيب
            If .Cells(R, TOTAL) < .Cells(LESS_ROW, TOTAL) Or .Cells(R, TOTAL) = "غ" Then
                ALL_LESS = ALL_LESS & .Cells(NAM_ROW, TOTAL) & " لنصف الدرجة " & " - "
            End If
            If XX = 11 Then ALL_LESS = "غياب  ": XX = 0
            '_____________________________________________________
            'هنا بعد اكتمال الكود يتم عمل شرط للمتغير
            'ALL_LESS
            'اذا كان المتغير فارغ اي لم يتم اضافة اي مواد به اذا الطالب ناجح
            If ALL_LESS = "" Then
                If .Cells(R, GENDER) = "ذكر" Then .Cells(R, STATUS) = "ناجح "    'اذا كان نوع الطالب ذكر يتم وضع ناجح
                If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "ناجحة "    'اذا كانت انثى يتم وضع ناجحه
                If .Cells(R, GENDER) = "ذكر" Then .Cells(R, NOTES) = "ومنقول " & INFO.Range("B14")    'ويتم وضع في الملاحظات منقول الى ويتم جلب الصف من صفحة الانفو
                If .Cells(R, GENDER) = 2 Then .Cells(R, NOTES) = "ومنقولة " & INFO.Range("B14")    'مثل ماسبق
                'اما اذا كان المتغير يحمل اي بيانات لمواد يصبح الطالب له دور ثان
            ElseIf ALL_LESS <> "" Then
                If .Cells(R, GENDER) = "ذكر" Then .Cells(R, STATUS) = "له دور ثان في"    'مثل ما سبق بخصوص النوع
                If .Cells(R, GENDER) = 2 Then .Cells(R, STATUS) = "لها دور ثان في"    '
                .Cells(R, NOTES) = Left(ALL_LESS, Len(ALL_LESS) - 2)    'هنا يتم وضع قيمة المتغير اي المواد في خلية الملاحظات
                ALL_LESS = Empty    'تفريغ المتغير لاعادة تعبئة اسم طالب اخر
            End If
            '_____________________________________________________
        Next R    'الذهاب الى الصف التالي حتى انتهاء عدد الطلاب
    End With
    Application.ScreenUpdating = True    'اعادة تحديث الشاشة
    Application.Calculation = xlAutomatic    'تشغيل الحساب التلقائي
End Sub



توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

look/images/icons/i1.gif استخراج حالة الطالب ناجح او دور ثان ومواد الرسوب
  29-08-2017 12:12 صباحاً   [12]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 9
المشاركات : 246
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-1-1985
الدعوات : 2
قوة السمعة : 641
الاعجاب : 10
ربنا يبارك فيك استاذ ياسر العربي
وجدنا ان عند الضغط على زر عرض النتيجه في عمود 102 التي يظهر فيه المواد في في نهايته تزيد حاله
====
جزاك الله كل خير


تم تحرير المشاركة بواسطة :الاستاذ محمدي عبدالسميع بتاريخ:29-08-2017 12:15 صباحاً




توقيع :الاستاذ محمدي عبدالسميع
جزاكم الله خيرا

اضافة رد جديد اضافة موضوع جديد
الصفحة 2 من 2 < 1 2 >




المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
تعديل كود معرفة حالة الطالب حاضر أو غائب Khairi
1 925 Khairi
كود حالة الطالب لابي العربي .. لايعمل فيه الغياب ناصر سعيد1
5 1671 ناصر سعيد1

الكلمات الدلالية
لا يوجد كلمات دلالية ..









اخلاء مسئولية: يخلى منتدى أكاديمية الصقر للتدريب مسئوليته عن اى مواضيع او مشاركات تندرج داخل الموقع ويحثكم على التواصل معنا ان كانت هناك اى إنتهاكات تتضمن اى انتهاك لحقوق الملكية الفكرية او الادبية لاى جهة - بالتواصل معنا من خلال نموذج مراسلة الإدارة .وسيتم اتخاذ الاجراءات اللازمة.
سياسة النشر: التعليقات المنشورة لا تعبر عن رأي منتدى أكاديمية الصقر للتدريب ولا نتحمل أي مسؤولية قانونية حيال ذلك ويتحمل كاتبها مسؤولية النشر.

الساعة الآن 12:13 AM