Excel函数:IF结合FIND函数快速判断是否包含关键字

各位大家好,我是Excel归故乡。最近几期给大家讲解几个关于IF函数的经典案例。今天先说IF函数+FIND函数组合,快速判断字符串中是否包含关键字。

如上图所示,我们要判断发货地是否为成都,把这句话翻译一下,就是判断发货地址中是否包含成都二字。我们如何判断呢?这里给大家引入一个新函数,FIND函数,我们在后面文本函数专题会再详细的讲解,这里大家只需要明白,FIND函数的作用是找出关键字在字符串中的位置,如果字符串不包含关键字,就返回错误值。我们不是要判断是不是包含关键字吗?找出关键字的位置有什么用呢?先不着急,我们先用INFD函数找一下关键字你就明白了。

用FIND函数寻找关键字的位置后,我们会发现,如果地址中包含关键字,则返回了关键字所在的位置,但是如果不包含关键字,则得到一个错误值。实际上就将包含关键字的和不包含的分成了有规律的两种情况。但是错误值不是很好处理,那我们是不是可以想办法,把错误值变成其他形式来展示,此时我们可以使用IFERROR函数,将错误值转换成数字0,如下图所示:

这个时候,我们包含关键字的地址对应的就是大于等于1的数字,而不包含关键字的地址,对应的就是0。此时我们联想到前面讲解的,非0的数字和0在IF函数中可以代替TRUE和FALSE,这里不正满足这个条件吗?我们正好就可以利用这个规律,将我们找出来的非0和0作为IF函数的第一参数,就可以得到我们想要的结果了,最后整理一下我们最终的公式:=IF(IFERROR(FIND(\”成都\”,B19),0),\”是\”,\”否\”)

以上就是本期的全部内容,IF函数作为基础函数,结合其他函数能衍生出很多用法,这里我们仅仅是给大家讲解一些用法基础模型,希望大家在掌握基础之后,能够更灵活的运用!

原创不易,请大家多多支持,期待与大家互相学习,共同进步!

Excel三种方法多条件筛选,你都用过吗?

Excel筛选功能大家都用过,精准筛选只需要在筛选框输入查找的内容即可。但是如果需要筛选多个内容呢?如下图这种情况,需要在A列筛选出包含\”苏宁\”、\”国美\”、\”club\”字段的数据。

这个问题,我们可以用三种方法去解决,小伙伴们挑选适合自己的一种方法记住即可~

不用函数公式,Excel自带高级筛选功能,只不过这里并不是精准匹配,需要对筛选条件进行处理。

在D列对筛选条件进行处理,将筛选内容首尾加上星号(*),星号(*)代表零个、单个或多个字符,这样就可以精准的匹配出单元格包括\”苏宁\”、\”国美\”、\”club\”的数据。

做好辅助数据之后,依次点击【数据】—【高级】,在弹出来的高级筛选框中,【列表区域】选择A1:A10,【条件区域】选择D1:D4(这里需要注意的一点是D1单元格的内容必须为A列的表头,即A1的内容),点击确定按钮,数据已筛选好;

也可选择将筛选的结果复制到其它位置,在弹出的高级筛选框中选择【将筛选结果复制到其他位置】,在【复制到】选项框中选择一个单元格即可。

在B2单元格输入【=IF(COUNT(FIND($C$2:$C$4,A2)),A2,\”\”)】,同时按下【Ctrl】+【Shift】+【Enter】三键输入数组公式,公式下拉,完成匹配。

公式解读:

FIND($C$2:$C$4,A2):find函数返回一个字符串在另一个字符串中出现的起始位置,查找到返回一个数字,查找不到,返回错误值“#VALUE!”;

COUNT(FIND($C$2:$C$4,A2)),count计数函数,参数为find函数的结果,查找到,count(一个数字)返回1,查找不到,count(#VALUE!)返回0;

最后再用一个if函数,如果count结果为1,返回A2单元格内容,如果count结果为0 ,返回空值。

之所以要同时按下【Ctrl】+【Shift】+【Enter】三键,是为了将公式变成数组公式,平时find函数第一个参数为字符串,这里却是一个数组$C$2:$C$4,所以要将公式变成数组公式才能得到正确计算结果。

在B2单元格内输入【=LOOKUP(0,0/FIND($C$2:$C$4,A2),$C$2:$C$4)】,公式下来,剔除#N/A值,剩下的结果即为查找内容。

lookup向量公式:=LOOKUP(查找的值,查找区域,返回区域);

其中第二个参数\”查找区域\”的数据必须按升序排列,且第三个参数区域的大小必须与第二个参数区域大小一致,否则函数LOOKUP不能返回正确的结果;

为了解决升序问题,我们引入了LOOKUP(0,0/条件,返回区域)来解决这一问题,参数二中的\”条件\”成立返回true,不成立返回false,0/true返回0,0/false返回#DIV/0!,说明满足条件返回0,不满足返回#DIV/0!,这时只要用一个大于等于0的数值查找就可以返回正确结果了,因为lookup默认忽略错误值,相当于排序了;

其中条件可以是多条件数组,参数本身支持,所以这里不用像数组函数那样同时按三个键输入。

三种方法中,高级筛选法更容易掌握一点,lookup向量法看起来要复杂一点,但这正是lookup的精髓所在,它支持逆向查找,功能比vlookup丰富,感兴趣的小伙伴可以学习下。

以上就是多条件筛选的三种小技巧,你都学会了嘛,如果觉得有用,欢迎关注我,每天分享数据小技巧!

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。