اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

بسم الله الرحمن الرحيم

 

الى اعضاء وخبراء ومشرفي اعظم منتدى

 كل عام وانتم جميعا بخير

 

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

 

ولكم منى فائق الشكر والاحترام

للرفع.rar

  • Like 2
قام بنشر (معدل)

السلام عليكم ورحمة الله

 

تقبل الله منا ومنكم صالح الأعمال وكل عام والأمة الإسلامية بخير...

 

أخي الكريم، تم التعديل على الكود حسب المطلوب (مع تعديل تحسيني لحذف العلامة الأخيرة " - " من قائمة مواد الرسوب إن كانت موجودة)... وكود الدخول إلى المصنف هو 123 (وقد نسي صاحب الموضوع وضعه)

 

أخوك بن علية

 

الملف المرفق : للرفع.rar

تم تعديل بواسطه بن علية حاجي
قام بنشر

الاخ الفاضل

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

 

ملحوظة : عمود الاسم فى الشيت مرتبط بعمود فى ورقة أخرى لذلك يظهر فى الخلايا 0 فيمكن أن يكون الكود  بيتعامل مع الصفر فى عمود الاسم على انه  قيمة لذلك بيعمل الحالة للشيت كله ويستغرق مدة طويله حتى ينتهى

قام بنشر

السلام عليكم ورحمة الله

 

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

 

أخوك بن علية

 

الملف المرفقللرفع_2.rar

قام بنشر

الأخ الفاضل بن علية 

بعد السلام عليك ورحمة الله وبركاته

احب ان اشكرك لاهتمامك ولكن يبدو أن وجود المعادلات فى خانة رقم الجلوس جعلت الكود يعمل لآخر الشيت كما اشرت حضرتك ولذا لم ينفع التعديل الاخير

 

لذا رفعت لحضرتك الملف كامل للتعديل عليه وبه المعادلات وعلى فكرة الكود فى  module10

ارجو ان تفيدنى بخبرتك وتقيم عملى هذا وخاصة أنه نتيجة تعلمى فى هذا المنتدى الرائع ولك جزيل الشكر

 

 

 

http://www.qzal.net/downloadf-13736310201-rar.html

 

http://sa.ae/6135a1e/

 

هذا الرابطان للملف 

 

وبعد التعديل وتخفيفا على حضرتك  يمكنك رفع ورقة الشيت ومرفق معها الكود ولا داعى لرفع المف كاملا

قام بنشر (معدل)

السلام عليكم ورحمة الله

 

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

 

أخوك بن علية

 

الملف المرفق : الكنترول بعد التجربة وجاهز.rar 

 

تم تعديل بواسطه بن علية حاجي
قام بنشر (معدل)

ابن السطرالذي تم تغييره  لو سمحت اخي المحترم

Option Explicit
'         اسماء المواد
Const nTEST As String = "عربي" & "," & _
                        "رياضيات" & "," & _
                        "علوم" & "," & _
                        "دراسات" & "," & _
                        "انجليزي" & "," & _
                        "مجموع" & "," & _
                        "دين"
'--------------------------------------
'         ارقام اعمدة الدرجة الاصلية
'          بالتسلسل حسب اسماء المواد
Const ColmnTotal As String = "20,29,40,49,58,59,85"
'         ارقام اعمدة الفصل الثاني
'         هنا المجموع ليس له عمود جعلناه صفراً
Const ColmnTest2 As String = "17,26,87,46,55,0,82"
'         رقم صف النهاية الصغرى
Const iRs As Integer = 8
Sub kh_Tgrba()
Application.ScreenUpdating = False
ActiveSheet.Unprotect
Range("CY9:CZ1000").ClearContents
Dim r As Integer, tst As String, X As Long
X = Application.WorksheetFunction.Max(Range("C:C")) + 8
For r = 9 To X
    tst = kh_test(r)
    If Len(tst) Then Cells(r, 103) = "دور ثاني" Else Cells(r, 103) = " ناجح"
Cells(r, 104) = kh_test(r)
If Cells(r, 103) = " ناجح" Then Cells(r, 104) = "منقول للصف التالي"
Next
Application.ScreenUpdating = True
End Sub
Function kh_test(iRow As Integer) As String
Dim vT, sT
Dim NN As String, TT As String
Dim ctlt As Integer, ctst As Integer
Dim c As Integer, cc As Integer
Dim ib As Boolean
cc = UBound(Split(nTEST, ","))
For c = 0 To cc
    ib = False
    NN = Split(nTEST, ",")(c)
    ctlt = Split(ColmnTotal, ",")(c)
    ctst = Split(ColmnTest2, ",")(c)
    vT = Cells(iRow, ctlt)
    If Not IsEmpty(vT) Then
        Select Case vT
            Case Is = "غ": ib = True
            Case Is < Cells(iRs, ctlt): ib = True
        End Select
    End If
    If ctst = 0 Then GoTo 1
    sT = Cells(iRow, ctst)
    If Not IsEmpty(sT) Then
        Select Case sT
            Case Is = "غ": ib = True
            Case Is < Cells(iRs, ctst): ib = True
        End Select
    End If
1:
    If ib Then TT = TT & NN & " - "
Next
If Right(TT, 3) = " - " Then kh_test = Left(TT, Len(TT) - 3) Else kh_test = TT
ActiveSheet.Protect
End Function



تم تعديل بواسطه nasersaeed

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information