EXCEL中如何以字体颜色为条件进行运算统计

有一列现成的数据,
78(蓝)
65(红)
32(绿)
65(绿)
94(红)
55(蓝)
27(绿)
我用括号表示了该数字的颜色,在数据录入时,某人把属于部门A的都设置成了红色,部门B的成了蓝色,部门C成了绿色,有没有一种函数类似SUMIF(),但是以颜色作为条件求和的?请高手指教。
2楼,这些都是输入员手工上色的,麻烦就在这里
-----------------
有的话我还问你么
------------------
我知道可以用高级查找-替换可以做,但是不知道能不能用函数,首席执行官快点出来,看公式是种享受!

1、如果有对应部门,那么统计部门的就可以了。
2、如果没有对应,那么能帮你想到的只有两个办法:
2.1、VBA写个自定义函数,可以按颜色统计的,有得下载.
2.2、先对数据进行求和,并记录结果,再用替换,设置格式为你要求的颜色,然后替换成0,再进行求和,再把第一次求和的结果减去它。
方法很笨,求完后还得Ctrl+Z恢复原来的数据,哈哈,实在没办法数据又多也是值得的,一般情况我是不会这么做的。(*^__^*) 嘻嘻……
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-15
宏表函数。
全选a列——菜单——插入——名称——定义——“当前工作薄中的名称”一行中填入一个名称,比如XX,
引用位置下面输入
=get.cell(24,$a1)
在空白列假定C1中输入=XX,公式下拉。这时单元格中出现不同的数字,红色的是3,无色的是0,蓝色是5…
求红色字体单元格个数:=countif(c:c,3)
黑色字体单元格个数的公式只需要改一下最后那个数字3,黑色是几就换成几。
第2个回答  2009-07-30
按alt+F11打开VBE,

右击左边工程框,插入,模块

贴入以下代码
Function ystj(col As Range, countrange As Range)
Dim i As Range
Application.Volatile
For Each i In countrange
If i.Font.ColorIndex = col.Font.ColorIndex Then
ystj = ystj + i
End If
Next
End Function

例如你的数据区域是A1:C100
在D1输入公式
=ystj(颜色,A1:C100) 按F9

其中颜色为想统计颜色字所在的单元格,如=ystj(A2,A1:C100)

如果想统计不同背景色的数字,将Font改为Interior。本回答被提问者采纳
第3个回答  2019-07-18
用宏表函数作为辅助列,再用countif计算。
需要的话,发邮件到[email protected]
第4个回答  2009-07-30
2007版excel也只能使用颜色作条件格式,不能统计。
相似回答