Excel怎么根据颜色求和 Excel按单元格颜色统计方法【技巧】

老墨大大_4385

老墨大大_4385

2026-03-31

809人浏览

原创

excel原生函数不支持按单元格颜色求和,需用subtotal筛选法、get.cell定义名称、vba自定义colorsum函数或power query提取颜色编号后聚合四种方法实现。

excel怎么根据颜色求和 excel按单元格颜色统计方法【技巧】

如果您需要在Excel中对特定颜色的单元格进行数值汇总,但发现SUMIF等常规函数无法识别填充色,则是因为Excel原生函数不支持基于颜色的计算。以下是实现按单元格颜色求和的多种方法:

一、使用SUBTOTAL配合筛选功能

该方法通过手动筛选出指定颜色的单元格,再利用SUBTOTAL函数对可见单元格求和,适用于临时统计且无需编程的场景。

1、选中包含数据和颜色标记的整列(例如A1:A100)。

2、点击【开始】选项卡 → 【查找和选择】 → 【选择格式相似的单元格】,在弹出窗口中点击【格式】按钮,设置与目标颜色一致的填充色,点击确定。

3、右键已选中的同色单元格 → 【筛选】 → 【按所选单元格颜色筛选】。

4、在数据区域下方状态栏查看求和结果;若需在单元格中显示,可在空白单元格输入公式:=SUBTOTAL(109,A1:A100),其中109代表对可见单元格求和。

二、借助GET.CELL定义名称(适用于Excel旧版本)

该方法通过宏表函数GET.CELL获取单元格背景色编号,并结合名称管理器创建动态引用,从而支持颜色条件判断。

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

2、在“名称”栏输入ColorSum,在“引用位置”栏输入:=GET.CELL(63,Sheet1!$A1)(请将Sheet1替换为实际工作表名,$A1为首个数据单元格)。

3、在B1单元格输入公式:=ColorSum,向下填充至对应行,此时B列显示各A列单元格的背景色代码。

4、在另一单元格中使用SUMIF函数:例如统计颜色代码为44(绿色)的数值之和,输入=SUMIF(B1:B100,44,A1:A100)。

三、使用VBA自定义函数ColorSum

该方法编写专用函数直接读取单元格Interior.ColorIndex属性,可重复调用且兼容多数Excel版本,但需启用宏功能。

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

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

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

Excel Report
Excel Report

使用 openpyxl 从 CSV 文件创建格式化的 Excel 报表工作簿。当用户提供或引用 .csv 文件并要求将其转换为 .xlsx 时使用。

下载

Dim colorIndex As Integer

Dim total As Double

colorIndex = colorRef.Cells(1, 1).Interior.ColorIndex

For Each cell In sumRange

If cell.Interior.ColorIndex = colorIndex Then total = total + cell.Value

Next cell

ColorSum = total

End Function

3、返回Excel界面,在任意单元格输入公式:=ColorSum(A1,A1:A100),其中A1为带目标颜色的参考单元格,A1:A100为待统计区域。

四、利用Power Query按背景色分类(Excel 2016及以上)

该方法将颜色信息导出为可识别字段,再通过分组聚合完成统计,适合处理结构化数据集并保留原始格式逻辑。

1、选中数据区域 → 【数据】选项卡 → 【从表格/区域】,勾选【表包含标题】,点击确定。

2、在Power Query编辑器中,右键任意列标题 → 【复制列】,重命名为“ColorCode”。

3、选中ColorCode列 → 【转换】选项卡 → 【格式】 → 【颜色】 → 【背景色】,此时该列显示各单元格背景色编号。

4、点击【主页】→ 【分组依据】,分组列选择ColorCode,新列名填“SumValue”,操作选“求和”,列选原始数值列。

5、点击【关闭并上载】,结果表即包含各颜色编号对应的求和值。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

excel

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
c++怎么把double转成int
c++怎么把double转成int

本专题整合了 c++ double相关教程,阅读专题下面的文章了解更多详细内容。

2025.08.29

4008

10

C++中int、float和double的区别
C++中int、float和double的区别

本专题整合了c++中int和double的区别,阅读专题下面的文章了解更多详细内容。

2025.10.23

764

4

function是什么
function是什么

function是函数的意思,是一段具有特定功能的可重复使用的代码块,是程序的基本组成单元之一,可以接受输入参数,执行特定的操作,并返回结果。本专题为大家提供function是什么的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.04

3140

5

js函数function用法
js函数function用法

js函数function用法有:1、声明函数;2、调用函数;3、函数参数;4、函数返回值;5、匿名函数;6、函数作为参数;7、函数作用域;8、递归函数。本专题提供js函数function用法的相关文章内容,大家可以免费阅读。

2023.10.07

514

5

excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

2023.07.25

5361

7

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.31

3336

5

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

2023.08.02

3120

3

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

2023.08.02

1444

3

excel斜线表头一分为二
excel斜线表头一分为二

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

2023.08.02

697

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 44.5万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.6万人学习