Function ColorCount(ParamArray Rng()) As Long
Application.Volatile
Dim a, x As Range
For Each a In Rng
For Each x In a.Cells
If x.Interior.Color <> vbWhite Then ColorCount = ColorCount + 1
Next
Next
End Function
Использование: =ColorCount(E1:E7) Пересчитывается по F9 и при любом пересчете формул
Позвольте еще один вопрос. Формула считает, но почемуто значения не обновляются автоматически, приходится кликать по ячеке с формулой, после чего она пересчитывается. С чем связано?