怎么把相同颜色的数据求和(表格按颜色求和)
怎么把相同颜色的数据求和(表格按颜色求和)=按颜色求和($B$6:$J$7 D2)求和:同理,如果是计数,只需将统计方式改成计数就可以。这个功能挺好用的,可惜一次只能针对一个颜色,如果有多个颜色,需要重复操作多次。如果你是使用Excel,刚好有一个自定义函数,可以轻松解决。
VIP学员的问题,怎么对下面黄色的单元格进行求和、计数?
偏偏学员还是使用WPS表格,幸运的是,卢子找到了财务工具箱,里面就有按单元格统计的功能。
财务工具箱,其实是智能工具箱里面的一个小功能,点下财务工具箱,就自动出现一个新的菜单。
操作很简单,点财务工具箱,按单元格颜色统计,引用区域和单元格,保持默认不变,确定,结果就出来。
同理,如果是计数,只需将统计方式改成计数就可以。
这个功能挺好用的,可惜一次只能针对一个颜色,如果有多个颜色,需要重复操作多次。
如果你是使用Excel,刚好有一个自定义函数,可以轻松解决。
求和:
=按颜色求和($B$6:$J$7 D2)
计数:
=按颜色计数($B$6:$J$7 D2)
语法都很简单。
=自定义函数(区域 带颜色的单元格)
使用自定义函数很简单,点开发工具,VB,插入模块,将代码粘贴进去,关闭窗口就可以使用。
Function 按颜色求和(求和区域 As Range 参考单元格 As Range Optional 颜色类型 As String = "填充") As Double
' 颜色类型:"填充"或"字体",即按照参考单元格的填充色或者字体颜色进行匹配
Application.Volatile
Set 求和区域 = Application.Intersect(ActiveSheet.UsedRange 求和区域)
Dim Rg As Range Total As Double Bol As Boolean
For Each Rg In 求和区域
Select Case 颜色类型
Case "填充"
Bol = (Rg.Interior.Color = 参考单元格.Interior.Color)
Case "字体"
Bol = (Rg.Font.Color = 参考单元格.Font.Color)
Case Else
按颜色求和 = "第三参数出错,请检查确认"
Exit Function
End Select
If Bol Then
Total = Total Rg.Value
End If
Next
按颜色求和 = Total
End Function
Function 按颜色计数(i As Range j As Range)
'新建一个自定义函数,函数名为 Countc(参数 1 是一个区域 i,参数 2 也是一个区域 j)
Dim n As Integer '定义一个变量 n,变量 n 为数值
Dim k As Range '定义一个变量 k,变量 k 为区域
For Each k In i '遍历区域 i 的所有单元格
If k.Interior.Color = j.Interior.Color Then
'如果区域 i 的第 k 个单元格颜色与区域 j 相同
n = n 1
'用于计数的 n 加 1
End If
Next
按颜色计数 = n '将 n 复制给 Countc,作为这个函数的输出结果
End Function
WPS表格更适合小白,几乎各种功能都有,机械性操作就行。而Excel更适合高层次的,更加智能,通过PQ、VBA等实现很多高难度的问题。