ARTICLE · 1213088
让你效率倍增的5个Excel函数(附可抄公式)
职场表格的活儿,八成耗在四类动作上:按条件汇总、按条件计数、批量拼文本、动态取数。下面 5 个函数,正好一个顶一件。
每个都按同一套结构讲:特点 → 语法 → 基础案例 → 组合用法,公式可以直接抄进表里试。
本期目录
01 SUMIFS|多条件求和02 COUNTIFS|多条件计数03 TEXTJOIN|文本合并04 FILTER|动态筛选05 LET|公式内定义变量
01 SUMIFS 多条件求和
● 特点
多个条件同时满足才求和,条件之间是「并且」关系。它比 SUMIF 能装的条件更多,是统计报表里出场率最高的函数之一。
注意:参数顺序和 SUMIF 是反的。SUMIFS 的第一个参数是求和区域,不是条件区域,这是最容易写错的地方。
● 语法
SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2], [条件2], ...)● 基础案例
数据表结构:A 列姓名、B 列部门、C 列月份、D 列销售额。需求是算销售部 2026 年 9 月的总销售额。
=SUMIFS(D2:D100, B2:B100,"销售部", C2:C100,"2026-09")● 组合用法
把月份条件换成 TEXT(TODAY(),"yyyy-mm"),报表就自动跟着当前月份走,不用每个月手改文本:
=SUMIFS(D2:D100,B2:B100,"销售部",C2:C100,TEXT(TODAY(),"yyyy-mm"))打开表就是本月业绩,月底不用再回头改条件。
02 COUNTIFS 多条件计数
● 特点
同样接受多个「并且」条件,但只统计符合条件的记录条数,不管数值大小。它和 SUMIFS 是一对搭档:一个加总,一个数人头。
● 语法
COUNTIFS(条件区域1, 条件1, [条件区域2], [条件2], ...)● 基础案例
还是上面那张表,统计销售部、9 月、销售额大于 1000 的人数。三个条件并列写进去就行:
=COUNTIFS(B2:B100,"销售部",C2:C100,"2026-09",D2:D100,">1000")● 组合用法
外面套一层 IF,把数字直接翻译成结论,团队指标完成没完成一眼可见:
=IF(COUNTIFS(B2:B100,"销售部",D2:D100,">1000")>=5,"达标","未达标")公式自己数完再判断,省掉一次人眼核对。
03 TEXTJOIN 文本合并
● 特点
把一整片单元格的文本批量拼起来,分隔符自己定,空白单元格可以跳过。老版本用 CONCATENATE 拼,空值会留下一串多余的斜杠或逗号,TEXTJOIN 没这个问题,合并备注、标签是首选。
● 语法
TEXTJOIN(分隔符, 是否忽略空单元格, 文本1, [文本2], ...)第二个参数写 TRUE 忽略空白,写 FALSE 则连空值一起算进分隔符。
● 基础案例
A2:C2 依次是姓名、岗位、部门,用 / 拼成一行:
=TEXTJOIN("/",TRUE,A2:C2)单元格有内容时输出 张三/销售专员/销售部;岗位那一格是空的,就自动变成 张三/销售部,不会多出一个孤零零的斜杠。
● 组合用法
和 IF 配合,可以把符合条件的人名一次性连成一串,直接贴进邮件或群公告:
=TEXTJOIN(",",TRUE,IF(B2:B100="销售部",A2:A100,""))这是数组公式,Excel 365 里直接回车即可,旧版本需要按 Ctrl+Shift+Enter。
04 FILTER 动态筛选
● 特点
动态数组函数,按条件直接返回匹配的整行或整列,结果自动向下溢出铺开。不用高级筛选、不用复制粘贴,源数据一变,结果跟着变。
版本要求:Excel 365 或 2021 及以上。
● 语法
FILTER(返回结果区域, 筛选条件, [无结果时返回文本])● 基础案例
提取 B 列为「销售部」的所有姓名,第三参数顺便把空结果的情况也写好:
=FILTER(A2:A100,B2:B100="销售部","无匹配人员")回车之后不用拖拽,结果自己往下排开;没有符合条件的记录时,显示「无匹配人员」,不会蹦出一个 #CALC! 错误。
● 组合用法
外面再包一层 TEXTJOIN,把筛出来的多行直接压成一个单元格里的文本:
=TEXTJOIN(";",TRUE,FILTER(A2:A100,B2:B100="销售部",""))筛选、拼接两步并作一步,做名单类报表很省事。
05 LET 公式内定义变量
● 特点
在一个公式内部给中间结果起名字,后面直接喊名字调用。效果有三个:超长嵌套变得能读懂、同一段计算只算一次、改参数时只改一处。
版本要求:Excel 365 或 2021 及以上。
● 语法
LET(变量名1, 变量值1, 变量名2, 变量值2, ..., 最终计算公式)● 基础案例
业绩在 D2,超过 10000 按 8% 提成,否则按 5%。先把 D2 命名为 sale,后面就不用反复写单元格地址:
=LET(sale,D2,IF(sale>10000,sale*0.08,sale*0.05))看起来只是少写了两个 D2,但当公式长到要换行时,可读性的差距就出来了。
● 组合用法
和 FILTER 搭配,把「先筛选、再统计」拆成两个有名字的步骤,比嵌套三层看得清楚得多:
=LET( data,FILTER(D2:D100,B2:B100="销售部"), avg,AVERAGE(data), MAX(data)&"|"&avg )data 存筛选结果,avg 存平均值,最后一行只负责把最大值和平均值拼起来输出。每个变量只算一次,也就不存在同一段筛选被执行两遍的问题。
最后:怎么分工记
五个函数不用死记,按「要干什么」去对号入座就行。顺手收藏这张表,下次卡住翻一眼:
真要说优先级,先把 SUMIFS 和 COUNTIFS 练熟——绝大多数月报、业绩表、考勤统计都靠这两个撑着。等表格开始变复杂,再请 FILTER 和 LET 出场。
你平时最常写的是哪个组合?是被 SUMIFS 的参数顺序坑过,还是被 VLOOKUP 的 #N/A 折腾过?评论区唠唠。
— END —















































































