如何在基础Excel中筛选排除值为100的序列号列表?
解决方案:用基础Excel函数生成无间隙有效序列号列表
核心思路
借助INDEX+SMALL+IF的基础函数组合,筛选原列表中不等于100的有效序列号,按顺序生成连续无间隙的列表,彻底避免空值或"No"类无效项。
无间隙提取公式
假设原序列号列表在A:A列(数据从A2开始,A1为表头),在新列的首个单元格(比如B2)输入以下数组公式(输入后按Ctrl+Shift+Enter确认,SharePoint基础Excel支持该操作):
=IFERROR(INDEX($A$2:$A$100,SMALL(IF($A$2:$A$100<>"100",ROW($A$2:$A$100)-ROW($A$2)+1),ROW(A1))),"")
下拉填充公式至出现空值即可。
公式拆解
IF($A$2:$A$100<>"100",ROW($A$2:$A$100)-ROW($A$2)+1):标记原列表中所有非100项的相对行号SMALL(...,ROW(A1)):按顺序提取第1、2、3...个有效项的行号INDEX($A$2:$A$100,...):根据行号提取对应有效序列号IFERROR(...):无有效项时返回空值,避免出现错误提示
原生成公式优化(直接跳过100)
如果想在生成序列号的环节就排除100,可修改原公式为:
=IF(AND(COUNTIF(CHOOSE(F33,fjan,ffeb,fmar,fapr,fmay,fjun,fjul,faug,fsep,foct,fnoc,fdec),D45)>0,C45<>"100"),C45,"")
之后再用上述无间隙提取公式生成最终列表即可。
注意事项
- 调整公式中的单元格范围(
$A$2:$A$100)匹配你的实际数据行数 - 若原列表中
100是数字格式,公式中去掉引号写成100即可
内容的提问来源于stack exchange,提问作者Lewis_SR
相关产品推荐
相关产品推荐

