اكمل جميلك واشرح الاسطر الباقيه يحفظك الله ويرعاك استاذ زيزو
Sub Circles()
'هذا الكود للمحترم النابغه زؤزو العجوز
'الهدف من الكود هو وضع دوائر على درجات في اعمده معينه
'تم هذا الكود في 19/5/2017
'استدعاء كود المسح اولا
Call DeletingShp
'متغيرات
Dim ws As Worksheet
Dim Arr() As Variant
Dim LR As Long, R As Long, i As Long
Dim Cel As Range
'اسم صفحه العمل
Set ws = Sheets("شيت")
If LR < 14 Then LR = 14
'متغير لعد الصفوف
LR = ws.Range("C" & Rows.Count).End(xlUp).Row
'ارقام الاعمده المطلوب وضع دوائر فيها
Arr = Array(11, 12, 14, 15, 17, 18, 20, 21, 23, 24, 26, 27, 29, 30, 32, 33, 35, 36, 37)
'بدايه الصفوف
For R = 14 To LR
For i = LBound(Arr) To UBound(Arr)
For Each Cel In ws.Cells(R, Arr(i))
If Cel.Value < ws.Cells(13, Cel.Column) Or Cel.Value = "غ" Then
Set xx = ActiveSheet.Shapes.AddShape(msoShapeOval, Cel.Left, Cel.Top, Cel.Width, Cel.Height)
xx.Fill.Visible = msoFalse
xx.Line.ForeColor.SchemeColor = 10
xx.Line.Weight = 1.2
End If
Next
Next
Next
End Sub
Sub DeletingShp()
Dim shp As Shape, x As Long
For Each shp In ActiveSheet.Shapes
If shp.Type = 1 Then shp.Delete: x = x + 1
Next shp
'MsgBox "تم حذف " & x & " دائرة بنجاح", vbMsgBoxRight, "الحمدلله"
End Sub
ملف الكودين للمحترم زيزو العجوز ( الكود الاول لوضع الدوائر والكود الثاني لمسح الدوائر )
نسخه منقحه
الدوائر.rar