点击蓝字
关注我们


当我们谈论Excel的数据汇总,“求和”一定是脑海里跳出的第一个动作。但面对不同场景,你是否曾对简单的“合计”感到力不从心?今天,我们就来系统梳理Excel中最核心的求和函数三剑客:SUM、SUMIF、SUMIFS。了解它们的演进,正是我们数据处理能力从基础到精通的进化之路。
一、SUM:万物归总,大道至简


1.名称含义


SUM就是“总和、合计”的意思,它是Excel中最基础、最直接的求和函数,任务单纯而强大:把指定的数字逐个加起来。
2.核心语法


SUM(number1,[number2],...)
number1:必需,可以是单个数字、单元格,或单元格区域。
[number2],...:可选,你可以继续添加最多255个需要求和的数字、单元格或单元格区域。
3.特性


SUM函数会自动忽略文本、逻辑值和空单元格,只对数值进行求和。
4.用法示例



▲图1、SUM示例
示例中可见,任务为对调增值、序号2项目、序号5-8项目的结算金额求和,使用SUM函数分别输入固定值参数、引用单元格参数、单元格区域参数,顺利完成了求和动作。
5.常见易错


①“看起来是数字,实际是文本”:从系统导出的数据常带有不可见字符或被存储为文本,导致SUM忽略它们,所以在统计动作之前需要先进行数据清理,包括但不限于去除单元格内容中的不可见字符、改变数据存储格式。

▲图2、SUM易错示例①
示例中可见,使用SUM函数对D4:D11区域的数据进行求和,跳过了序号4的文字、序号7存在换行类不可见字符的数据、序号8文本型保存的数据,故在统计数据前一定要进行数据清洗。




②区域包含错误值:如果求和区域内有一个#N/A或#DIV/0!等错误,SUM结果也会报错。可使用IFERROR函数处理错误值。

▲图3、SUM易错②
示例中可见,由于序号5项目名称中存在空格,导致vlookup函数未在数据表中匹配到对应数据,结算金额显示为报错值“#N/A”,求和值也显示“#N/A”。我们也可以利用这一特性,从一个求和单元值显示情况判断众多明细中是否存在错误值。
二、SUMIF:按图索骥,条件求和


1.名称含义


SUMIF=SUM+IF。它在求和的基础上,增加了一个“如果”的条件判断,实现单条件求和。
2.核心语法


SUMIF(range,criteria,[sum_range])
条件区域(range):必需,用于条件判断的单元格区域。
条件(criteria):必需,定义哪些单元格将被相加的条件。它可以是数字、表达式(如">100")、文本(如"北京")或单元格引用。
求和区域([sum_range]):可选,实际需要求和的单元格区域。如果省略,Excel会对range参数中符合条件的单元格本身进行求和。
3.用法



▲图4、SUMIF示例1
示例中可见,任务需要求业主为A的项目的结算总金额,使用SUM函数和SUMIF函数得到的结果一致。

▲图5、SUMIF示例2
示例中可见,未输入求和区域时,函数自动对了条件区域中符合条件的单元格进行了求和,同样得到了一致结果。
4.常见易错


①条件区域与求和区域大小不一致带来的错误隐患:这是导致#VALUE!错误的主要原因。虽然EXCEL开发者设计了一个固定机制来保证函数运行尽可能正确:当你手动输入的求和区域与条件区域不匹配时,SUMIF不会进行“错误求和”或“失败”,而是以你输入的求和区域第一个单元格为起点,向下和向右扩展,生成一个与条件区域尺寸相同的镜像区域来求和,但使用SUMIF函数时还是应该确保range和sum_range具有相同的行数和列数,防患于未然。

▲图6、SUMIF易错①
示例中可见,虽然输入条件区域与求和区域尺寸不匹配,但仍得出了正确结果,这得益于已设定的防错机制,建议规范使用函数。




②数字与文本格式的混淆:因数据存储格式导致的不匹配现象与VLOOKUP函数相同,此处不再赘述。
三、SUMIFS:运筹帷幄,多条件聚合


1.名称含义


SUMIFS=SUM+IF+S(复数)。它是SUMIF的增强版,用于同时满足多个条件的求和,是处理复杂数据分析的利器,是日常工作中最常用的求和函数。
2.核心语法


SUMIFS(sum_range,criteria_range1,criteria1,[criteria_range2,criteria2],...)
求和区域(sum_range):必需,实际要求和的单元格区域。
条件区域1(criteria_range1):必需,第一个条件判断的区域。
条件1(criteria1):必需,应用于criteria_range1的条件。
条件区域n、条件n([criteria_range2,criteria2],...):可选,最多可以添加127对额外的“条件区域/条件”。
3.特性


所有条件之间是“且”的关系,即必须同时满足所有条件,对应的值才会被求和。
4.高阶用法



▲图7、SUMIFS示例
示例中可见,任务需要求A业主、负责人为张三在华北区域的项目的结算总金额,按照函数使用规则顺序输入筛选条件,锁定了符合条件的项目,输入了对应结果。
5.常见易错


①参数顺序与SUMIF相反:在SUMIF中是(条件区域,条件,求和区域),而在SUMIFS中是(求和区域,条件区域1,条件1,……)。




②所有区域必须尺寸一致:与SUMIF类似,sum_range和每一个criteria_range都必须大小相同,否则会报错,SUMIFS函数没有防错机制,只要存在任意两个区域尺寸不一致均无法求出正确结果,报错为“#VALUE!”。

▲图8、SUMIFS易错②
一般情况下,求和区域、条件区域会引用整列进行计算,这样既可以自动将新插入的行数据纳入求和,又可以保证区域尺寸一致,但应注意基础数据表与统计数表摆放的位置、表头内容,防止数据混乱。




③日期、数字作为条件的引用问题:当条件是比较运算符(如">=2024/1/1")且引用单元格时,必须用连接符&,如">="&F1。
四、进阶“彩蛋”——分类汇总的神“SUBTOTAL”



SUM是基石,解决“有多少”的问题。
SUMIF是筛选器,解决“其中某一部分有多少”的问题。
SUMIFS是显微镜,解决“在多个特定约束下,精确的那一部分有多少”的问题。
SUMPRODUCT函数常用于矩阵求和,涉及乘法运算,广泛应用于高等代数、线性代数的运算中。在财务工作中使用较少,本文不做介绍。
那SUBTOTAL则是一个智能且多功能的聚合函数,能完美应对存在手动隐藏行、筛选隐藏行等动态数据视图下的求和需求。
1.名称含义


SUBTOTAL=SUB(次要的、局部的)+TOTAL(总计)。它的核心能力是当你对表格进行筛选后,它只对屏幕上还能看见的数据进行计算,自动忽略被筛选隐藏掉的行。在做多层汇总时(比如先有小计、再有总计),它能自动识别并跳过已经存在的其他SUBTOTAL函数计算的“小计”结果,从而保证最终的总和准确无误,不会重复加总。
2.核心语法


=SUBTOTAL(function_num,ref1,[ref2],...)
function_num:必需,一个1到11或101到111的数字,用于指定要使用的函数或是否忽略手动隐藏数据,如下表:

▲图9、SUBTOTAL功能参数表
ref1:必需,要对其进行计算的第一个命名区域或引用。
[ref2],…:可选,要对其进行计算的第2个至第254个区域或引用。

TIPS
小
贴
士
1-11与101-111功能的关键区别:function_num使用1-11时,SUBTOTAL仍会将手动隐藏行纳入计算;使用101-111时,则会排除手动隐藏行进行计算。绝大多数情况下,求和会使用109。
3.核心用途与经典场景



▲图10、SUBTOTAL示例1
当没有筛选隐藏行、手动隐藏行时,SUBTOTAL函数的9、109参数的计算结果一致。

▲图11、SUBTOTAL示例2
若手动隐藏部分数据行,SUBTOTAL函数的9、109参数的计算结果出现差异。

▲图12、SUBTOTAL示例3

▲图13、SUBTOTAL示例4

▲图14、SUBTOTAL示例5
当使用筛选功能完成以下任务:①业主为A项目结算总金额、②完成率达50%及以上项目的结算总金额、③业主为A在华北区域项目的结算总金额,SUBTOTAL函数的9、109参数的计算结果一致且与使用SUMIFS函数的对照组计算结果一致。
4.易错点与注意事项


①函数编号错选:混淆9和109是最常见的错误。如果你希望筛选后求和,务必使用109。
②区域引用错误:与SUM系列一样,需确保引用区域正确,特别是当数据表可能扩展时,建议使用整列引用或动态结构化引用。
五、结语



学会这些经典的求和函数,告别计算器,将日常节奏性工作转化为半自动表格,提高工作效率,快转发给需要的同事吧,拯救更多人的眼睛和加班时间吧!

往期推荐


中国铁工投资财金资讯



编 辑丨席浩天
执行主编丨李继高
责任编辑丨谭 亮