关键字_Excel判断关键字是否在关键字列表中的方法

不区分字符的先后顺序,只要全部包含在关键字列表中,就判定为Y,有一个字符不在列表中就判定为N:

8c0803b7563a6ce07eac4d92e674f8a6.png

首先想到的是要拆分关键字一个一个的去关键字列表中比对。

关键字拆分我们要用到MID+ROW+INDIRECT+LEN组合公式:

我们要把“弹力球”拆分为“弹”、“力”、“球”:

=MID(A4,ROW(INDIRECT("1:"&LEN(A4))),1)

ROW+INDIRECT+LEN是构建一个列表{1;2;3},作为MID第二参数,是截取字符的起始位置列表:

b458d5527988642f0ea68aa9c817baca.png

用FIND函数比对关键字列表:

用FIND函数到关键字列表中去查找“弹”、“力”、“球”三个字对应的位置:

=FIND(MID(A4,ROW(INDIRECT("1:"&LEN(A4))),1),$A$1,1)

668603583c137be5c4bbcaa717fd40f8.png

逻辑判断

查找的结果有三种可能,全部包含、部分包含、不包含,对于FIND函数来说只有全部包含才能有数值返回,其他两种情况会返回错误值,就需要用ISERROR函数来处理错误。

就是说如果ISERROR返回TRUE,就表示FIND查找失败,不过这是不包含才出现的情况,那么部分包含时,如果第一个字符能找到,也会返回FALSE,这时就需要用OR函数来判断一下,就是说,只要有一个字符没找到,返回的是TRUE,那么这个逻辑判断整体就返回TRUE,部分包含与不包含都返回TRUE。

=OR(ISERROR(FIND(MID(A4,ROW(INDIRECT("1:"&LEN(A4))),1),$A$1,1))=TRUE)

d62c28bedd8d37039870aa39f0e6c02e.png

判断结果

对于逻辑判断返回结果:

  • TRUE:N
  • FALSE:Y

=IF(

OR(ISERROR(FIND(MID(A4,ROW(INDIRECT("1:"&LEN(A4))),1),$A$1,1))=TRUE),"N
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值