Excel 技巧:按颜色(背景色、字体色、使用条件格式)对单元格进行计数/求和
在日常工作中,颜色标记是快速区分和突出显示关键数据的常用方法。但如何根据特定颜色(如填充色、字体颜色或条件格式所应用的颜色)来统计或求和单元格数据呢?虽然 Excel 默认并未提供直接按颜色统计或求和的功能,但借助一些技巧和间接方法,我们依然可以实现这一目标。本文将为您详解如何按颜色高效统计与求和数据。

根据背景颜色统计和求和单元格
例如,如果您有一组数据,其中的单元格填充了不同的背景颜色(如下方截图所示),而 Excel 并未提供直接按背景颜色统计或求和单元格的功能。不过,借助一些巧妙的方法和实用技巧,您依然可以轻松完成这项任务。本节将为您介绍几种高效可行的解决方案。
使用自定义函数按背景颜色统计和求和单元格
此处将为您展示如何在 Excel 中创建并使用此类自定义函数来完成此任务。请按以下步骤操作:
步骤 1:打开 VBA 模块编辑器并复制代码
- 按下 Alt + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
- 在打开的窗口中,单击插入 > 模块,即可创建一个新的空白模块。
- 然后,将下方代码复制并粘贴到空白模块中。
VBA 代码:根据背景颜色统计和求和单元格Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean = False) As Variant 'Updateby Extendoffice Dim rCell As Range Dim lCol As Long Dim vResult As Double lCol = rColor.Interior.ColorIndex vResult = 0 If SUM Then For Each rCell In rRange If rCell.Interior.ColorIndex = lCol Then vResult = vResult + rCell.Value End If Next rCell Else For Each rCell In rRange If rCell.Interior.ColorIndex = lCol Then vResult = vResult + 1 End If Next rCell End If ColorFunction = vResult End Function
步骤 2:创建公式按背景颜色统计和求和单元格
粘贴上述代码后,关闭模块窗口,然后应用以下公式:
- 根据特定背景颜色统计单元格数量:
将下方公式复制或输入到目标单元格中即可获取结果,然后向下拖动填充柄以快速应用至其他单元格。参见截图:
=colorfunction(G2,$B$2:$E$12,FALSE)注意:G2 是包含您要匹配的特定背景颜色的参考单元格;$B$2:$E$12 是要统计 G2 颜色单元格数量的区域;FALSE 用于统计背景颜色匹配的单元格。
- 根据特定背景颜色对单元格求和:
将下方提供的公式复制或输入到目标单元格中即可获取结果,然后向下拖动填充柄以快速应用至其他单元格。参见截图:
=colorfunction(G2,$B$2:$E$12,TRUE)注意:在此公式中,G2 是包含您要匹配的特定背景颜色的参考单元格;$B$2:$E$12 是待统计的区域;TRUE 表示对背景颜色匹配的单元格进行求和。
使用强大功能按背景颜色统计和求和单元格
对于不熟悉编程的用户来说,VBA 可能显得相当复杂。在此,我们为您推荐一款强大工具——Kutools for Excel,其按颜色统计功能让您只需几次点击,即可轻松根据背景颜色进行计算(如计数、求和、平均值等)。更令人印象深刻的是,按颜色统计功能不仅支持背景颜色,还能基于字体颜色及条件格式进行智能区分与计算。
在 下载并安装 Kutools for Excel后,请先选择您要基于特定背景颜色进行计数或求和的数据区域。接着,点击 KUTOOLS PLUS,并选择按颜色统计。
在按颜色统计对话框中,请指定操作:
- 从标准格式化颜色模式下拉列表中选择;
- 从背景色统计类型下拉列表中指定,并可在对话框中预览每种背景颜色的统计结果;
- 最后,单击生成报告,即可将计算结果导出到新工作簿。

结果:
现在,您将获得一个包含统计信息的新工作簿。请参见下方截图:
- 该按颜色统计功能还支持根据标准字体颜色、背景色、条件格式设置的字体颜色,以及填充色与条件格式颜色的组合,对单元格进行统计与求和。

- 如果您对该功能感兴趣,请 立即点击下载,畅享 30 天免费试用。
使用筛选和 SUBTOTAL 函数按背景颜色对单元格进行计数和求和
假设我们有一个如下图所示的水果销售表,需要对金额列中的彩色单元格进行计数或求和。
步骤 1:应用 SUBTOTAL 函数
请选择一个空白单元格,用于输入 SUBTOTAL 函数。
- 要统计所有具有相同背景颜色的单元格,请输入以下公式:
=SUBTOTAL(102, F2:F16) - 要对所有具有相同背景颜色的单元格求和,请输入以下公式;
=SUBTOTAL(109, F2:F16) - 注意:在上述公式中,102 表示在筛选列表中统计数值并排除隐藏单元格;109 表示在筛选列表中对数值求和并排除隐藏单元格;F2:F16 为执行计数或求和操作的区域。

步骤 2:根据特定颜色筛选单元格
- 选中表格标题,然后点击数据> 筛选。操作界面如下图所示:

- 单击金额列标题单元格中的筛选图标
,然后依次单击按颜色筛选以及您要统计的指定颜色。参见截图:
结果:
筛选后,SUBTOTAL 公式会自动对金额列中的彩色单元格进行计数和求和。请参见截图:
根据字体颜色对单元格进行计数和求和
想在 Excel 中根据单元格的字体颜色进行计数或求和吗?假设您有如下图所示的数据,其中单元格文本分别以红色、蓝色、橙色和黑色显示。Excel 默认并不支持此功能,但别担心!本节将为您介绍几种简单实用的技巧,轻松实现这一目标。
使用自定义函数根据字体颜色对单元格进行计数和求和
要对特定字体颜色的单元格进行计数与求和,以下自定义函数可助您轻松完成。请按以下步骤操作:
步骤 1:打开 VBA 模块编辑器并复制代码
- 按下 Alt + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
- 在打开的窗口中,单击插入 > 模块,即可创建一个新的空白模块。
- 然后,将下方代码复制并粘贴到空白模块中。
VBA 代码:根据字体颜色统计和求和单元格Function ProcessByFontColor(pRange1 As Range, pRange2 As Range, FunctionType As String) As Double 'Updateby Extendoffice Application.Volatile Dim rng As Range Dim xTotal As Double Dim xCount As Double xTotal = 0 xCount = 0 For Each rng In pRange1 If rng.Font.Color = pRange2.Font.Color Then If UCase(FunctionType) = "SUM" Then xTotal = xTotal + rng.Value ElseIf UCase(FunctionType) = "COUNT" Then xCount = xCount + 1 End If End If Next If UCase(FunctionType) = "SUM" Then ProcessByFontColor = xTotal ElseIf UCase(FunctionType) = "COUNT" Then ProcessByFontColor = xCount Else ProcessByFontColor = CVErr(xlErrValue) End If End Function
步骤 2:创建公式以按字体颜色对单元格进行计数和求和
粘贴上述代码后,关闭模块窗口,然后应用以下公式:
- 根据特定字体颜色统计单元格数量:
将下方提供的公式复制或输入到目标单元格中,即可获取结果;随后向下拖动填充柄,快速应用至其他单元格。参见截图:
=ProcessByFontColor($B$2:$E$12,G2, "COUNT")注意:G2 是包含您要匹配的特定字体颜色的参考单元格;$B$2:$E$12 是用于统计与 G2 字体颜色相同单元格数量的区域。
- 根据特定字体颜色对单元格求和:
将下方提供的公式复制或输入到目标单元格中,即可获取结果;随后向下拖动填充柄,快速应用至其他单元格。参见截图:
=ProcessByFontColor($B$2:$E$12,G2, "SUM")注意:在此公式中,G2 是包含您要匹配的特定字体颜色的参考单元格;$B$2:$E$12 是用于统计与 G2 字体颜色相同单元格数值之和的区域。
使用便捷功能根据字体颜色对单元格进行计数和求和
想在 Excel 中根据字体颜色轻松对单元格值进行计数或求和吗?立即体验 Kutools for Excel 的按颜色统计功能!借助这一智能工具,按特定字体颜色对单元格进行计数和求和变得轻而易举。了解 Kutools 如何改变您的 Excel 使用体验。
在 下载并安装 Kutools for Excel后,请先选择您要基于特定字体颜色进行计数或求和的数据区域,然后点击 KUTOOLS PLUS 中的按颜色统计,即可打开按颜色统计对话框。
在按颜色统计对话框中,请指定操作:
- 从标准格式化颜色模式下拉列表中选择;
- 从字体颜色统计类型下拉列表中指定,并可在对话框中预览每种字体颜色的统计结果;
- 最后,单击生成报告,即可将计算结果导出到新工作簿。

结果:
现在,您已获得一个可根据字体颜色显示详细统计信息的新工作簿。请参见以下截图:
根据使用条件格式颜色对单元格进行计数和求和
在 Excel 中,您通常会使用条件格式为满足特定条件的单元格应用特定颜色,让数据可视化更加直观。但如果您需要对这些带有特殊格式的单元格进行计数或求和,又该如何操作?虽然 Excel 未提供直接的方法,但以下技巧可助您轻松突破这一限制。
使用 VBA 代码对条件格式化的单元格进行计数和求和
在 Excel 中,直接使用内置函数对应用了条件格式的单元格进行计数或求和并非易事。不过,借助 VBA 代码,您完全可以轻松实现这一目标。下面将为您介绍如何通过 VBA 完成此操作:
步骤 1:打开 VBA 模块编辑器并复制代码
- 按下 Alt + F11 键,即可打开 Microsoft Visual Basic for Applications 窗口。
- 在打开的窗口中,单击插入 > 模块,即可创建一个新的空白模块。
- 然后,将下方代码复制并粘贴到空白模块中。
VBA 代码:根据使用条件格式颜色统计和求和单元格Sub SumCountByConditionalFormat() 'Updateby Extendoffice Dim sampleColor As Range Dim selectedRange As Range Dim cell As Range Dim countByColor As Long Dim sumByColor As Double Dim refColor As Long Set selectedRange = Application.InputBox("Select a range to evaluate:", _ "Kutools for Excel", _ Type:=8) If selectedRange Is Nothing Then Exit Sub Set sampleColor = Application.InputBox("Select a conditional formatting color:", _ "Kutools for Excel", _ Type:=8) If Not sampleColor Is Nothing Then refColor = sampleColor.Cells(1, 1).DisplayFormat.Interior.color For Each cell In selectedRange If cell.DisplayFormat.Interior.color = refColor Then countByColor = countByColor + 1 sumByColor = sumByColor + cell.Value End If Next cell MsgBox "Count: " & countByColor & vbCrLf & _ "Sum: " & sumByColor, _ vbInformation, "Results based on Conditional Format Color" End If End Sub
步骤 2:执行此 VBA 代码
- 粘贴代码后,按 F5 键运行此代码,将弹出一个提示框,请选择数据区域中您要用于条件格式统计和求和的单元格区域,然后单击确定。参见截图:

- 在另一个提示框中,选择您要统计和求和的特定使用条件格式颜色,然后单击确定按钮,参见截图:

结果:
现在,包含指定使用条件格式颜色的单元格的计数与求和结果将显示在弹出框中。请参见截图:
使用智能功能对条件格式化的单元格进行计数和求和
如果您正在寻找其他快速简便的方法来对条件格式化的单元格进行计数和求和,Kutools for Excel 是您的理想之选。其按颜色统计功能只需几次点击即可轻松完成此任务。立即体验 Kutools 为您的工作流程带来的高效与精准!
在 下载并安装 Kutools for Excel后,请先选择您要基于特定条件格式颜色进行计数或求和的数据区域。然后,单击 KUTOOLS PLUS 中的按颜色统计,即可打开按颜色统计对话框。
在按颜色统计对话框中,请指定操作:
- 从使用条件格式颜色模式下拉列表中选择;
- 从背景色统计类型下拉列表中指定,并可在对话框中预览每种条件格式颜色的统计结果;
- 最后,单击生成报告,即可将计算结果导出到新工作簿。

结果:
现在,您已获得一个全新的工作簿,其中通过条件格式的颜色直观呈现详细的统计信息。请参见截图:
相关文章:
- 如果字体颜色为红色,则返回指定文本
- 如下图所示,如何在另一个单元格中根据字体颜色为红色返回指定文本?本文将为您介绍一些在 Excel 中基于红色字体文本进行操作的实用技巧。
- 按多种颜色筛选数据
- 通常,在 Excel 中您可以快速按单一颜色筛选行,但您是否想过如何同时按多种颜色进行筛选?本文将为您介绍一个快速实现此操作的实用技巧。
- 为下拉列表添加颜色
- 在 Excel 中,创建下拉列表能为您提供极大便利;有时,您还需要根据所选项对下拉列表中的值进行颜色编码。例如,我创建了一个水果名称的下拉列表:当选中“Apple”时,单元格会自动变为红色;当选中“Orange”时,单元格则会变为橙色。
- 为合并隔行着色
- 在大型数据集中,为隔行设置不同颜色有助于提升数据浏览体验;但有时,您的数据中可能包含合并单元格。如下面截图所示,如何在 Excel 中对包含合并单元格的区域实现隔行交替着色?
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格而不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 特色功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 精选 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 大幅提升您的 Excel 技能,体验前所未有的高效办公。Kutools for Excel 提供 300 多项高级功能,助您提升工作效率、节省宝贵时间。立即点击获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更加轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中。
- 每天为您减少数百次鼠标点击,工作效率提升 50%!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件包含适用于 Excel、Word、Outlook 和 PowerPoint 的插件,以及 Office Tab Pro,是跨 Office 应用高效协作团队的理想之选。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内即可完成设置(支持 MSI)
- 协同效果更佳— 在多个 Office 应用中实现高效办公
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 相比单独购买插件更省钱





,然后依次单击按颜色筛选以及您要统计的指定颜色。参见截图:


