每次筛选数据,序号就断成一截一截;好不容易隐藏几行,序号又乱了。最后一行筛选时直接不见,打印出来还要手动改。别急,Subtotal函数能帮你一次性解决这些麻烦。今天就把Subtotal函数的核心用法拆解吃透。
一、函数语法与用法
SUBTOTAL函数返回列表或数据库中的分类汇总。
语法为:=SUBTOTAL(function_num,ref1,[ref2],...)
- 第一个参数使用1-11,会统计手动隐藏的行;
- 使用101-111,则忽略手动隐藏的行。
筛选掉的单元格,两种代码都会自动跳过。
比如你想对A列求和,=SUBTOTAL(109,A2:A100),筛选或隐藏后只算可见数据,而使用Sum函数是无法实现的。

二、筛选隐藏后序号连续
示例:员工表按部门筛选,隐藏行后序号乱成一团。
方法:在A2输入:=SUBTOTAL(103,$B$2:B2),下拉填充。
参数103对应Counta,只数非空且可见的单元格。筛选“销售部”,序号自动变成1,2,3…不跳号。如果不想忽略隐藏行,把103改成3即可。

三、最后一行参与筛选
用上面的公式,最后一行会被筛选“固定”住,总是不消失怎么办?
在公式末尾乘1:=SUBTOTAL(103,$B$2:B2)*1
乘1不改变数值,但把结果变成普通值,最后一行就能正常参与筛选了。这个小技巧很多老手都不知道哦。
结语
Subtotal函数不仅能替代Sum、Count等,还能智能应对筛选和隐藏。记住三个关键词:参数109忽略隐藏行、103自动连续序号、乘1解绑最后一行。下次数据筛选,别再手动折腾了。
评论 (0)