Function SC(ColorCell, Sum_range)
Application.Volatile
'【参数1: ColorCell】 指定底色的单元格(单一单元格)
'【参数2: Sum_range】 单元格矩形区域
'【功能】返回指定单元格颜色在选中单元格个数的占比
'
SC = 0
X = 0
'下面开始统计第1参数对象区域中,所有相同底色单元格中的结果
For i = 1 To Sum_range.Cells.Count '遍历区域中所有单元格
If Sum_range.Cells(i).Rows.Hidden = False Then
If Sum_range.Cells(i).Columns.Hidden = False Then
X = X + 1 '统计未隐藏的单元格数
If Sum_range.Cells(i).Interior.ColorIndex = ColorCell.Interior.ColorIndex Then '如果底色相同则
SC = SC + 1 '仅仅统计同底色单元格的个数
'如果同底色单元格中为数值(含文本数值)时求总和。
End If
End If
End If
Next
SC = SC / X '计算占比
ActiveCell.NumberFormat = "0.00%"
End Function