IF函数,作为Excel中最小白的函数,相信大家都或多或少地会用一些。

但是,我们的目标是——不仅要会用,还要用精。

今天就来给大家讲「判断单元格是否包含指定内容」这类问题的三种解决思路。

希望大家,永远都有PlanB呀~

if函数公式大全集(千万别说你会IF函数)(1)

编辑|六姑娘

作者 | 老菜鸟

老规矩,开始之前,还是先给大家介绍一些IF函数的基本用法。

1、单条件判断

如果A1单元格值大于500,显示“完成”,否则显示“未完成”

=IF(A1>500,"完成","未完成")

2、区间判断

判断成绩,小于60不及格,大于60小于80良好,大于80优秀

=IF(A1<60,"不及格",IF(A1<80,"良好","优秀"))

3、多条件“且”判断

如果A1的值大于60并且B1不为空,显示“已结束”否则显示“未结束”

=IF(AND(A1>60,B1<>""),"已结束","未结束")

4、多条件“或”判断

如果B2销量大于1000或者C2盈利大于10000的产品属于畅销产品。

=IF(OR(B2>1000,C2>10000),"畅销","不畅销")

5、填充序号

根据B列的部门名称,在A列按部门生成编号。

=IF(B2<>B1,1,A1 1)

好啦,接下来我们进入正题。

下面,是一个考勤汇总表,我们需要根据备注中的内容判断该员工是否存在加班的情况。

if函数公式大全集(千万别说你会IF函数)(2)

遇到这类问题该如何处理,常用的公式做法有三种,下面为大家逐一进行介绍。

1、IF COUNTIF

公式:=IF(COUNTIF(D2,"*加班*")=0,"","是")

if函数公式大全集(千万别说你会IF函数)(3)

公式解析:

COUNTIF(D2,"*加班*"),主要实现的是条件计数功能,基本格式为COUNTIF(条件区域,条件)。

实现的效果就是对满足条件的单元格进行计数,如果包含要判断的内容,结果为1,不包含的话结果为0。

if函数公式大全集(千万别说你会IF函数)(4)

之后,再使用IF函数得到最终的结果。

=IF(COUNTIF(D2,"*加班*")=0,"","是")

如果D2单元格中不包含“加班”,COUNTIF的结果就是0,IF返回对应的空值,否则返回“是”。

2、IF ISERR FIND

公式:=IF(ISERR(FIND("加班",D2)),"","是")

if函数公式大全集(千万别说你会IF函数)(5)

公式解析:

FIND函数的基本格式为FIND(要找的内容,在哪找,从第几个字开始找),如果第三参数不写,表示从首字符开始找。

FIND("加班",D2),找得到,FIND就返回要找的内容在单元格中的位置,找不到就会返回一个错误值。

if函数公式大全集(千万别说你会IF函数)(6)

ISERR函数很简单,就是判断一个值是否为#N/A以外的错误值,本例中的错误值为#VALUE!,因此用这个函数完全没问题。

最后再加上IF函数,就构成了完整的公式=IF(ISERR(FIND("加班",D2)),"","是")。

3、IF SUBSTITUTE

公式:=IF(SUBSTITUTE(D2,"加班","")=D2,"","是")

if函数公式大全集(千万别说你会IF函数)(7)

公式解析:

SUBSTITUTE(在哪里替换,要替换的内容,替换为什么,替换第几个),如果最后一个参数不写,表示全部替换。

公式SUBSTITUTE(D2,"加班","")的意思是把D2单元格中的“加班”两个字替换为空,替换后的结果如图所示。

if函数公式大全集(千万别说你会IF函数)(8)

接下来就比较有意思了,用替换后的内容和原来的内容做比较,也就是SUBSTITUTE(D2,"加班","")=D2,如果包含加班的话,替换后的内容肯定不等于原来的单元格了,反之如果替换后的内容与原内容一样,表示没有要找的内容。

好啦,以上就是一个简单的问题,引发的3个IF函数公式的探讨。

大家还有没有其他更好的解决方案呢?欢迎在评论区留言~

,