excel如何按颜色求和_excel按单元格背景颜色分类求和【技巧】

admin 百科 16
Excel原生函数不支持按背景颜色求和,可行方法有三:一、用GET.CELL定义名称+辅助列+SUMIF(仅限桌面版);二、VBA自定义SumByColor函数;三、筛选+SUBTOTAL(109)组合法。

excel如何按颜色求和_excel按单元格背景颜色分类求和【技巧】-第1张图片-佛山资讯网

如果您需要在Excel中对具有特定背景颜色的单元格进行求和,但发现SUMIF等常规函数无法识别颜色条件,则是因为Excel原生函数不支持基于格式(如填充色)的逻辑判断。以下是实现按单元格背景颜色分类求和的多种可行方法:

一、使用辅助列配合GET.CELL定义名称(适用于Excel桌面版,无需VBA)

该方法利用Excel 4.0宏表函数GET.CELL读取单元格背景色编号,并通过定义名称将其映射为可引用的数值,从而在辅助列中生成颜色标识,再结合SUMIF完成求和。

1、按Ctrl+F3打开“名称管理器”,点击“新建”。

2、在“名称”栏输入ColorIndex,在“引用位置”栏输入:=GET.CELL(63,Sheet1!$A$1),其中Sheet1需替换为实际工作表名,$A$1需替换为待检测颜色的首个数据单元格(例如数据从A1开始,则填A1;若从B2开始,则填B2)。

3、在数据区域旁插入一列辅助列(如B列对应A列数据),在B1单元格输入公式:=ColorIndex,然后下拉填充至所有对应行。

4、在任意空白单元格中输入SUMIF公式,例如对背景色编号为35的单元格求和:=SUMIF(B:B,35,A:A)。

5、如需批量获取不同颜色编号,可先用条件格式设置几种标准色,再用ColorIndex名称查看其对应数值,注意:此方法在Excel for Microsoft 365网页版及部分Mac版本中不可用

二、使用VBA自定义函数SumByColor

通过编写VBA函数,直接接收颜色所在单元格与求和区域作为参数,遍历区域中每个单元格的Interior.ColorIndex或Interior.Color值,比对一致后累加对应数值,实现精准按色求和。

1、按Alt+F11打开VBA编辑器,右键“当前工作簿” → “插入” → “模块”。

2、在新模块中粘贴以下代码:

Function SumByColor(sumRange As Range, colorRef As Range) As Double

Dim clr As Long

clr = colorRef.Interior.Color

Dim cell As Range

标签: excel mac microsoft

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~