PS:很想录视频讲解,但是但是真的工作太忙了。大家谅解一下,不懂函数参数,如何填写,可以看我以前的教学视频,都讲过噢。
同理,如果三列必须全部填写完才能生成序号,我们将OR换成AND,AND函数就是并列条件全部成立,返回序号,有一个不成立,返回空格。
咱们向下复制公式,大家看,这样做就满足了小伙伴的要求。
但是以行号作为判断条件,有一定的缺陷,就是我们在首行或者表头添加行的时候,序号挤压会发生变化。你需要调整ROW()-1的参数,重新复制函数。(以行号作为判断条件,对于固定表格配合嵌套函数,生成工号是绝佳的方法噢)
我们来进阶一下,对于连续区域的条件判断,如果列数较多,OR和AND函数显然书写繁复。这里我们就用加入计数判断句,COUNTA(B2:D2)>=1,以B2到D2的区域进行计数(空白不计数),如果>=1,则返回序号。
我们再来看看序号不留号占位的方法。
IF条件判断我们依然用COUNTA(B2:D2)>=1进行判断,如果条件成立,则返回COUNTIF(A$1:A1,">0")+1,以A1单元为首,向下计数,计数条件为>0,空白不计数。这样套路组合,形成了多列判断不留号。
使用COUNTIF有个好处,插入空白行,序号不乱序。
如果留号占位,那更简单,返回为真的条件书写为COUNTA(A$1:A1),COUNTA用于统计区域内非空值的单元格个数,咱们序号3的位置虽然是空白,但存在逻辑计算,也要参与统计。跟COUNTIF的条件判断有所差别(大家一定要理解),这样就保证了序号留号占位。
以上做法,当我们书写填写BCD任何数值,序号都会自动生成。但有个缺点,就是我们筛选的时候,依然会将隐藏单元格区域计算在内。要解决这一方法很简单。
表格最后增加一个辅助列。
A2处书写公式,=IF(COUNTA(B2:D2)>=1,SUBTOTAL(3,F$1:F2)-1,"")。SUBTOTAL函数很强大,他可以选择统计隐藏/忽略隐藏单元格的计算。第一个参数3,表示包含隐藏值的的计数(相当于COUNTA),以E列进行计数。
当我们开启筛选,由于我们E列只有三个数,直接会给我们返回序号1,2,3。取消筛选,又变成原来的样子。
分两步进行:
1、分别在A、B、C列前插入一空白列,如图:
2、设置公式:
A2公式:
=TEXT(MID(B2,3,10),"00")
C2公式:
=TEXT(MID(D2,3,10),"00000")
E2公式:
=C2&TEXT(COUNTIF(D$2:D2,D2),"000")
以上三个公式,下拉。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)