你还在手动筛选吗?实在是太笨了!4种场景的筛选公式,收好不谢!
哈喽,大家好。
今天来给大家讲解一个筛选不合格名单的问题。
即手里有一份总名单(清单),领导突然拿了一份不合格名单过来,要求制作出合格名单。
由于事先总名单中并没有合格或者不合格的标记项目,所以很多人会选择手动筛选。
效率有点子低,对不对?
没关系,完全可以用函数公式快速、准确完成筛选,下面分别针对可能出现的4种场景给出不同的解决公式。
场景1:总名单和不合格名单均在一个单元格
如图,现需要在D列筛选出合格产品的数据。

在D2单元格输入公式:
=TEXTJOIN("、",,FILTER(TRIM(MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)),--ISNUMBER(FIND(TRIM(MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)),$C2))=0))

公式解释:
1. 使用“SUBSTITUTE($B2,"、",REPT(" ",50))”,将B2的分割符号“、”替换为50个空格。形成类似“产品1 50个空格产品1 50个空格……产品10 50个空格”的数据。2. 使用MID函数“MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)”,依次提取上述含空格的数据,得到如“{"产品1
";" 产品2
";……}”的产品加空格的数组。注意这里的“$B$1:$B$10”,表示的是总名单数据,这里假设只有10个产品数据需要处理。大家具体使用时,请根据实际产品数量名称修改。3. 使用TRIM(MID)函数,将原来数组里的空格删除,形成类似“{"产品A1 ";" 产品A2 ";" 产品A3 ";" 产品A4 ";" 产品A5 ";" 产品A6 ";" 产品A7 ";" 产品A8 ";" 产品A9 ";" 产品A10"}”的数组。4. FIND(TRIM(MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)),$C2):将每个产品在不合格名单中查找一次,得到数组{#VALUE!;#VALUE!;1;#VALUE!;5;#VALUE!;#VALUE!;#VALUE!;9;#VALUE!}。错误表示产品不在合格名单中,是合格的。
5· --ISNUMBER函数将数组转化成“{0;0;1;0;1;0;0;0;1;0 }”,0对应合格产品,1对应不合格产品。再用是否=0的判断将数组变成{1;1;0;1;0;1;1;1;0;1 },1对应合格产品,0对应不合格产品。最后使用Filter筛选和TEXTJOIN连接。
场景2:总名单和不合格名单均在不同单元格
方法1:FILTER函数筛选
如下:

在B6单元格输入公式“=TEXTJOIN("、",,FILTER(B2:K2,COUNTIF(L2:N2,B2:K2)=0))”。

方法2:SUBSTITUTE函数替换
在B9单元格输入公式
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXTJOIN("、",,B2:K2),IFS(L2="","",L2=K2,"、"&L2,TRUE,L2&"、"),""),IFS(M2="","",M2=K2,"、"&M2,TRUE,M2&"、"),""),IFS(N2="","",N2=K2,"、"&N2,TRUE,N2&"、"),"")
输完公式后下拉即可。
场景3:总名单在不同单元格,不合格名单在一个单元格
如下:

在B6单元格输入公式=TEXTJOIN("、",,FILTER(B2:K2,--ISNUMBER(FIND($B2:$K2,$L2))=0))。

场景4:总名单在同一单元格,不合格名单在不同单元格中
如下:

定位到F2单元格输入公式下拉即可。
=TEXTJOIN("、",,FILTER(TRIM(MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)),--ISNUMBER(FIND(TRIM(MID(SUBSTITUTE($B2,"、",REPT(" ",50)),ROW($B$1:$B$10)*50-49,50)),C2&D2&E2))=0))

同样可以使用多层SUBSTITUTE函数提取数据,如下图所示。

写在最后:
1.如果版本支持,优先使用FILTER函数筛选。
如果数据在不同的单元格,使用COUNTIF函数计数,对同一类型数据进行统计标记,然后再以这个作为条件进行筛选。
如果数据不是在一个单元格中,使用FIND函数进行查找并通过ISNUMBER函数转化为0和1,然后再进行筛选。
2.如果不支持FILTER函数,可以使用SUBSTITUTE函数替换。
如果数据在不同的单元格,直接依次替换;如果数据在一个单元格,可以使用MID嵌套其他函数依次提取后替换。这里注意的是对最后一个数据的处理,可以使用IFS函数添加条件,添加不同的替换条件即可。
Notion AI:AI写作神器,靠谱姐带你手把手搞定它!
NotionNotion是一个功能强大的数字化工具,可以帮助您更好地管理和组织您的工作和生活。通过Notion,您可以创建各种类型的页面和数据库,例如笔记、待办事项、项目管理和客户关系管理等。Notion还提供了各种集成和自定义选项,以适应不同的需求和工作流程。无论您是一名创业者、学生、自由职业者还是企业家,Notion都可以帮助您更高效地工作和生活。站长网2023-07-30 13:55:030000教你如何打开微信隐藏的拍照功能?打开后照片清晰10倍,简单实用
朋友们大家好,我是小俊,今天小俊给大家分享一下微信中隐藏的一个实用功能,好多朋友还不知道,那就是如何使用微信拍出高清美观又好看的照片,既不需要关闭微信,返回到手机界面打开相机,也可以使用美颜滤镜效果,平时我们在使用微信给好友发送照片的时候啊,都是直接打开微信聊天界面,接着点击拍摄按钮,这样呢就可以将照片发送给好友了,但是好友打开之后啊,会发现照片非常模糊,很不清晰!站长网2023-07-28 13:51:590000别告诉我,你会数据透视表?
数据透视表为卢子的最爱,强大到变态!可惜很多人都弃而不用,非常可惜。今天就来说一下你所不知道的数据透视表。1.每隔4个数统计金额,也就是1-4的金额,5-8的金额等依次类推。对于这种,很多人第一想法就是用SUMIFS函数,其实跟统计有关的首选数据透视表。创建组,步长为4就搞定。2.还有一种就是按周组合,这个也很少人知道。按周组合,也就是按日组合,步长为7。站长网2023-07-27 09:17:390004【特效图文 -前不见古人,后不见来者】
【特效图文-前不见古人,后不见来者】图文:网络编辑:小丝制作日期:2023.05.25.*****欢迎光临感谢欣赏,小丝祝您欣赏愉快,天天快乐******站长网2023-07-28 14:45:550000ps立体封面制作视频:载入动作分步操作方法立体贴图
ps立体封面制作视频|ps动作载入方法视频|ps动作立体贴图视频|ps动作分步操作视频本视频教程由部落窝教育分享。站长网2023-07-28 09:56:570000