جرب هذا الكود
Sub Button1_Click()
Dim cl As Range
On Error Resume Next
Cells.SpecialCells(xlCellTypeFormulas, 23).Select
For Each cl In Selection
cl.Value = cl.Value2
Next
End Sub
اولاً هذه الاكودا قم باستبدالها بأكواد مسح الكل
Sub clear1()
Range("C15:N15,C17:P17,C19:N19,C21:N21").ClearContents
End Sub
Sub clear2()
Range("S15:AD15,S17:AF17,S19:AD19,S21:AD21").ClearContents
End Sub
ثانياً اليس الحد العددي 48
جرب هذه المعادلة وبصراحة لم افهم المطلوب ولكن تم تنفيذ المطلوب حسب المذكور دون تجربة
=IF(P8>$P$6;TRUE;IF(P7>$P$6;FALSE;IF(OR(P8<$P$6;P7<$P$6;P8="غائب ");FALSE)))
ضع هذا الكود في زر أمر في الشيت
( MAIN )
Sub Abu_Ahmed_Count()
Dim cl As Range, cel As Range
For Each cel In Range("A10:A" & [A1000].End(xlUp).Row - 1)
For i = 1 To Sheets.Count - 1
For Each cl In Sheets(i).Range("B1:B" & Sheets(i).[B1000].End(xlUp).Row)
If cel = cl Then
x = x + cl.Offset(0, 1)
Y = Y + cl.Offset(0, 2)
End If
Next
w = w + x
Z = Z + Y
cel.Offset(0, 1) = w
cel.Offset(0, 2) = Z
x = 0
Y = 0
Next
w = 0
Z = 0
Next
End Sub
جرب هذا الكود
Application.ScreenUpdating = False
c = 3: r = 1: T = 15
If r > 48 Then Exit Sub
Do Until Cells(T, c) = ""
T = T + 2
If T > 21 Then
T = 15
c = c + 1
End If
r = r + 1
Loop
Cells(T, c) = r
r = r + 1
Exit Sub
Application.ScreenUpdating = True
End Sub
شاهد المرفق
MoveNumber (1).rar