在excel中使用到序号的时候,我们总是先生成一列序号,但我们并不知道自己需要的行数是多少,所以生成的序号有时候会比内容行多,有时候比内容行少,这就要删除或者再次生成序号,而且当行被删除或者隐藏后,需要又不连续了,如下图所示
这样非常的不方便,那么如何输入内容自动产生序号,并且保证行在隐藏和删除后,序号仍然连续呢,我们来分享一个方法:
我们来分析一下公式&#xff1a;&#61;IF(B2<>"",SUBTOTAL(103,$B$1:B1),"")
首先通过if语句判断B2单元格是否为空值&#xff0c;如果为空的话&#xff0c;就显示SUBTOTAL(103,$B$1:B1)这一部分。
语法: SUBTOTAL(function_num,ref1,ref2, ...)
Function_num 为 1 到 11(包含隐藏值)或 101 到 111(忽略隐藏值)之间的数字&#xff0c;指定使用何种函数在列表中进行分类汇总计算。
Function_num (忽略隐藏值) 函数
1 、101 AVERAGE 数学平均值
2 、102 COUNT 数字的个数
3 、103 COUNTA 非空的个数
4 、104 MAX 最大值
5、 105 MIN 最小值
6 、106 PRODUCT 乘积
7、 107 STDEV 标准偏差
8、 108 STDEVP 标准偏差
9 、109 SUM 求和
10 、110 VAR 方差
11 、111 VARP 方差
从函数的语法我们可以看出&#xff0c;我们选中的Function_num为103&#xff0c;也就是计数并且忽略隐藏值&#xff0c;所以说隐藏行的时候&#xff0c;隐藏值就不被计算在内&#xff0c;又因为if语句的判断在B2<>“”的时候才计数&#xff0c;所以当删除和隐藏行的时候&#xff0c;序号仍然连续。