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

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

قام بنشر

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

الكود الاول لعمل الدوائر ويخصص له زر و يتم ربطه به

  Sub Circles1()
Call DeletingShp
Dim ws As Worksheet, C As Range
Dim MyRng As Range, V As Shape
Dim G As Integer, R As Integer, D As Integer
Application.ScreenUpdating = False
Set ws = Sheets("شهادات الرابع")
Set MyRng = ws.Range("B27:L27,B40:L40,B53:L53,B64:L64,B76:L76,B88:L88")
For Each C In MyRng
    If C.Value = "دون المستوى" Then
        Set V = ActiveSheet.Shapes.AddShape(msoShapeOval, C.Left + 1, C.Top + 1, C.Width, C.Height - 1)
        V.Fill.Visible = msoFalse
        V.Line.ForeColor.SchemeColor = 10
        V.Line.Weight = 1.9
    End If
 Next
Application.ScreenUpdating = True
End Sub

اما الكود الثانى مخصص لمسح الدوائر وسيعمل تلقائيا مع الكود الاول

Sub DeletingShp()
    Dim shp As Shape
    For Each shp In ActiveSheet.Shapes
      If shp.Type = msoShapeOval Then shp.Delete
    Next shp
End Sub

هذا وبالله التوفيق

 

  • Like 1
قام بنشر

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

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

‏‏2017شيت مدرستى - الصف الرابع-.rar

قام بنشر

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

‏‏2017شيت مدرستى - الصف الرابع-.rar

قام بنشر

السلام عليكم ورحمة الله وبركاته ..... الأستاذ/على 

شكرا على الإهتمام ..... ولكن لوحظ عدم وضع دوائر على بعض درجات الطالب الراسب والتى تقل عن النهاية الصغرى ووضع دائرة على درجة أكبر من النهاية الصغرى....... درجة ناجحة......

‏‏2017شيت مدرستى - الصف الرابع-.rar

قام بنشر

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

لاحظت وجود دوائر ثابته دائماً فى الخلايا B52  وكذلك خلايا اللغة العربية جميعها B26 - b39 - b52 وهكذا جميع خلايا اللغة العربية ولا تظهر الدوائر فى باقى المواد/ لو أخذنا مثال الشهادة الأولى الطالب /إبراهيم السيد صبحى يتضح ذلك

‏‏2017شيت مدرستى - الصف الرابع-.rar

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

لان الدرجة كانت ثابتة في كل مرة 32.5 وهي اقل من 50

غير الدرحات في الشيت واستخدم ازرار التنقل ولا الفرق

1.jpg.8bff7b0559bc03b45585580422f51747.jpg

 

2.jpg.9346ba55ec042a807b05a6942e0fc3ba.jpg

كما يمكنك استبدال السطر

    If C.Value < E.Value  Then

بالسطر

    If C.Value < E.Value Or C.Value = "غ" Then

لكي يتم وضع دائرة في حالة الغياب

الكود صبح بالشكل

 Sub Circles1()
On Error Resume Next
Call DeletingShp
Dim ws As Worksheet, C As Range, E As Range
Dim MyRng As Range, V As Shape

Application.ScreenUpdating = False

Set ws = Sheets("شهادات الرابع")
Dim i As Integer
Dim j As Integer

For i = 2 To 12: For j = 1 To 70 Step 13

Set MyRng = ws.Cells("25" + j, i): Set MyRng2 = ws.Cells("24" + j, i)

For Each C In MyRng: For Each E In MyRng2
    If C.Value < E.Value Or C.Value = "غ" Then
        Set V = ActiveSheet.Shapes.AddShape(msoShapeOval, C.Left - 1, C.Top + 1, C.Width, C.Height - 1)
        V.Fill.Visible = msoFalse
        V.Line.ForeColor.SchemeColor = 10
        V.Line.Weight = 1.2
        V.Shadow.Visible = msoFalse
    End If
 Next: Next
 Next
 Next
 
Application.ScreenUpdating = True
End Sub

 

 

‏‏2017شيت مدرستى - الصف الرابع 44-44-.rar

تم تعديل بواسطه علي المصري
تعديل المرفق
قام بنشر

السلام عليكم ورحمة الله وبركاته........ جزاك الله خيراً أخى الكريم على إهتمامك..... 

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

‏‏2017شيت مدرستى - الصف الرابع 44-44-.rar

شهاده.png

شهادة2.png

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

قام بنشر

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

قام بنشر

جزاك الله خيرا ...... هناك ملحوظة يعض الدوائر تظل ثابته فى مكانها ولا تختفى إلا بعد تشعيل الكود من الداخل ( Run ) كما فى المرفق

شهادة5.png

شهاده4.png

قام بنشر

لازم تربط الكود مع كل زر تستخدمه لاظهار الشهادات

القائمة المنسدلة

وزر التبديل

حيث انه عند استخدام القائمة المنسدلة لابد من ربطها مع الكود حتى يعمل الكود

 

قام بنشر

الله ينور عليك ...... وجزاك الله خيراً .... وزادك من علمه...... وتحية خاصة من أهل المنوفية إلى أهلنا بأسيوط

قام بنشر

السلام عليكم ورحمة الله وبركاته.... أخى الكريم / الأستاذ على ...من المعروف بأن الطالب الذى لم يحصل على 30% من درجة إمتحان آخر العام يكون راسب ( دون المستوى ) حتى ولوكان مجموعه النهائى فى الماده أكبر من النصف فى المجموع الكلى للماده ( مثال مادة العلوم مثلاً من 60درجة إذا حصل الطالب على 40 من 60 ولم يحصل على 18 درجة فى إختبار آخر العام يكون راسب ) ..... ولكن لايتم وضع دائرة على الدرجة لآنها أكبر من النصف...

السؤال.... هل يمكن تعيديل فى الكود بحيث ينظر إلى الدرجة إذا كانت أكبر من النصف ( النهاية الصفرى ) ولكن فى خانة المستوى ( دون المستوى ) يتم وضع مربع على الدرجة .... لتدل على أن الطالب لم يحصل على 30% من درجة آخر العام..... 

معذرة لكثرة الأسئلة... والإطاله.... جزاك الله خيراً 

شهادة المستوى.png

قام بنشر

استخدم الكود التالي بعد التعديل

Sub Circles1()
On Error Resume Next
Call DeletingShp
Dim ws As Worksheet, C As Range, E As Range, F As Range
Dim MyRng As Range, MyRng2 As Range, MyRng3 As Range, V As Shape
Dim G As Integer, R As Integer, D As Integer
Application.ScreenUpdating = False
Set ws = Sheets("شهادات الرابع")
Dim i As Integer
Dim j As Integer
For i = 2 To 12
For j = 1 To 70 Step 13
Set MyRng = ws.Cells("25" + j, i)
Set MyRng2 = ws.Cells("24" + j, i)
Set MyRng3 = ws.Cells("26" + j, i)

For Each C In MyRng: For Each E In MyRng2: For Each F In MyRng3
    If C.Value < E.Value Or F.Value = "دون المستوى" Then
        Set V = ActiveSheet.Shapes.AddShape(msoShapeOval, C.Left + 1, C.Top + 1, C.Width, C.Height - 1)
        V.Fill.Visible = msoFalse
        V.Line.ForeColor.SchemeColor = 10
        V.Line.Weight = 1.9
        V.Shadow.Visible = msoFalse
    End If
 Next: Next
 Next
 Next
 Next
Application.ScreenUpdating = True
End Sub

 

قام بنشر

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

عند التطبيق تظهر الرسالة المرفقة....

شهاده4.png

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

السلام عليكم ورحمة الله وبركاته.....قمت بإضافة الجزأ الأول من الكودالقديم والحمد لله إشتغل الكود بصوره ممتازه 

Sub DeletingShp()
    Dim shp As Shape
    For Each shp In ActiveSheet.Shapes
     If shp.Type = 1 Then shp.Delete
    Next shp
End Sub

ولكن هل يمكن وضع مربع بدل الدائرة على الدرجة الأكبر من النهاية الصغرى ولكنها دون المستوى لعدم حصولها على 3% من درجةإختبار آخر العام

‏‏2017شيت مدرستى - الصف الرابع 44-44-.rar

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

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.

×
×
  • اضف...

Important Information