السلام عليكم ورحمة الله وبركاته
أقدم لكم دالة معرفة تقوم بجمع الخلايا الملونة بلون محدد ، أو عد هذه الخلايا
بفرض أن لديك النطاق A2:A15 ويحتوي على خلايا ملونة باللون الأصفر ، والمطلوب جمع الخلايا التي تحتوي على هذا اللون في خلية ، وعدد هذه الخلايا في خلية أخرى.
نقوم بوضع الدالة المعرفة التالية في موديول عادي
[p]
<code>
CODE
Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)
Dim rCell As Range
Dim lCol As Long
Dim vResult
lCol = rColor.Interior.ColorIndex
If SUM = True Then
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell) + vResult
End If
Next rCell
Else
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
End If
Next rCell
End If
ColorFunction = vResult
End Function
</code></pre>
استخدام الدالة : نستخدم المعادلة التالية في ورقة العمل لجمع الخلايا الملونة باللون الأصفر (نلون الخلية C2 بنفس اللون المطلوب جمعه) ، ونضع المعادلة في الخلية D2
[p]
<code>
CODE
=ColorFunction(C2,$A$2:$A$15,TRUE)
</code></pre>
ونستخدم المعادلة التالية لعد الخلايا الملونة باللون الأصفر (نلون الخلية C4 بنفس اللون المطلوب عده) ، ونضع المعادلة في الخلية D4
[p]
<code>
CODE
=ColorFunction(C2,$A$2:$A$15,FALSE)
</code></pre>
رابط الملف من هنا
إعداد / ياسر خليل أبو البراء