验证内容是否存在并返回
验证内容是否存在并返回,求助各位大佬如果A2内容是:
鲁智深、铁拐李、李四、曹操
那么,C2对应的结果应该是什么? C2=IF(COUNT(FIND("、"&TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),ROW(1:9)*99-98,99))&"、","、"&B2&"、、"))=9,A2,"")
数组 下拉 返回鲁智深、铁拐李、曹操;只返回存在于B2单元格内容的值 =TEXTJOIN("、",1,IF(ISNUMBER(FIND(TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),(ROW($1:$10)-1)*99+1,99)),A2)),TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),(ROW($1:$10)-1)*99+1,99)),""))
三键结束,下拉 大佬此公式的原理是什么,可以稍微解释下吗? =IF(COUNT(IFERROR(FIND(TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),ROW(INDIRECT("1:"&SUM(N(MID(A2,ROW($1:$99),1)="、"))+1))*99-98,99)),B2),""))=SUM(N(MID(A2,ROW($1:$99),1)="、"))+1,A2,"") 三键结束 如果我在A2中随机增加一个内容,但对应的B2里没有A2的这个内容,那么你的公式就会有问题。 我的理解是拆分每个内容然后分别去B2里查找,如果都能查到那么就可以返回A2的内容。 用错了一个引用
=TEXTJOIN("、",1,IF(ISNUMBER(FIND(TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),(ROW($1:$10)-1)*99+1,99)),B2)),TRIM(MID(SUBSTITUTE(A2,"、",REPT(" ",99)),(ROW($1:$10)-1)*99+1,99)),"")) 有点问题大佬,我刚试着在A2增加一个名字,直接返回空值了,我的需求是验证A2的内容是否存在于B2,存在的内容则返回C2单元格,不存在不显示就可以了