Я только что создал это, и это выглядит проще. Вы получаете эти 2 функции:
=GetColorIndex(E5) <- returns color number for the cell
от (ячейка)
=CountColorIndexInRange(C7:C24,14) <- returns count of cells C7:C24 with color 14
из (диапазон ячеек, номер цвета, который вы хотите считать)
пример показывает процент клеток с цветом 14
=ROUND(CountColorIndexInRange(C7:C24,14)/18, 4 )
Создать эти 2 функции VBA в модуле (нажмите Alt-F11)
открыть + папки. дважды щелкните на Module1
Просто вставьте этот текст ниже, затем закройте окно модуля (оно должно сохранить его):
Function GetColorIndex(Cell As Range)
GetColorIndex = Cell.Interior.ColorIndex
End Function
Function CountColorIndexInRange(Rng As Range, TestColor As Long)
Dim cnt
Dim cl As Range
cnt = 0
For Each cl In Rng
If GetColorIndex(cl) = TestColor Then
Rem Debug.Print ">" & TestColor & "<"
cnt = cnt + 1
End If
Next
CountColorIndexInRange = cnt
End Function