首页 > excel > 正文

Excel if函数在进行单条件判断时如何嵌套(基础与高级用法)

卡饭网 梦在深巷 2016-10-30 19:26:44

Excel函数的 if函数使用比较广泛,特别是在单条件判断的时候,if函数可以帮我们解决很多问题,if嵌套书写前,首先要理解要求,并将要求数学化,也就是使用数学的模式表达出来,if函数多重嵌套一般情况下我们可以将它看做分段函数,那么问题就很容易解决了。if函数除了可以引用单元格的数据还可以引用函数值或者其他表格甚至是文件的数据,你可以根据自己的需要使用更加复杂的函数,将其和if函数组合使用,可以得到非常广阔的使用范围。
if函数必须的条件:
每一个 if函数必须使用英文的括号括起来;
括号内为三个数据,第一个数据是条件(如上例中的a2>60),第二数据为满足第一个数据后返回的结果,通常使用英文的引号括起来,第三个数据是不满足第一个数据时需要返回的结果;(如果不输入第三个数据可以吗,当然可以,返回什么结果自己试试吧)
经常出现的错误:
其中的符号如逗号和引号皆为英文(也就是所谓的半角),若输入中文符号则错误;
if的右括号放在了条件的后面;(这是在多个条件使用if函数进行嵌套时非常容易犯的错误)
最简单的excel if函数应用
例子:下图数据在d列显示如下结果:如果数据1大于60则显示合格,否则显示不合格。
那么在d2单元格输入以下公式:
=if(a2>60,"合格","不合格")
然后向下拖拽,自动生成数据,如下图D列效果。
if函数嵌套用法
例子:下图数据,在e列显示如下结果:如果A列的数据1小于60则显示不合格,如果大于等于60而小于80则显示合格,如果大于等于80而小于90显示良好,如果大于等于90则显示优秀。
这是经典的if嵌套应用例子,需要我们使用 if函数的嵌套。
if嵌套书写前,首先你要理解要求,并将要求数学化,也就是使用数学的模式表达出来,if函数多重嵌套一般情况下我们可以将它看做分段函数,那么问题就很容易解决了。例子可以在E2单元格使用如下代码:
=if(a2<60,"不合格",if(a2<80,"合格",if(a2<90,"良好","优秀")))
当数据1小于60时,显示不合格,这时在 不合格 逗号的右侧默认就是>=60的情况,那么根据题意,只需再满足<80即可显示合格,于是我们将最简单的 if函数的第三个数据变成了一个if函数,依次类推,每一次可以将一个if函数作为每一个基本函数的第三个数据,从而形成多种嵌套。
(图例中多余在最后一个 if前后加了一个括号,当然这种方法也正确,但不是最简单的。)

其实还有另一种写法,也就是将嵌套的if写在基本if函数的第二个数据的位置,如下图,不过这种写法不常用,也比较不好理解,并且容易写错,不推荐大家使用。

if函数的高级用法
if函数除了可以引用单元格的数据还可以引用函数值或者其他表格甚至是文件的数据。下面举个小例子:
下图数据1中,如果当前数字超过本列数字的平均值则显示合格,达不到平均值的显示不合格。
函数代码如下:
=if(a2>average($a$2:$a$9),"合格","不合格")
这句话是这样理解的,当数据a2大于a2到a9所有数据的平均数时,返回合格,否则返回不合格。
其中average( )是求平均数函数,而$a$2:$a$9是绝对定位a2到a9的区域,加了$符号的作用是不会随着公式的拖动而改变,如果不加$这个符号,我们在拖动单元格自动生成数据时求平均数的区域a2到a9区域就会公式的拖动而变化,a2就会变成a3,a9就会变为a10,如果横向拖动时a2就会变成b2,这可不是我们想要的。但是average前面的a2没有加,那是我们想让它随着公式拖动而变化。关于这一点你可以自己尝试,如想了解更多关于excel绝对引用的知识可以参考这里,这篇文章还讲到了对其他表格的引用,有兴趣可以看看。

以上只是简单的excel if函数举例,大家可以根据自己的需要使用更加复杂的函数,将其和if函数组合使用,可以得到非常广阔的使用范围,建议大家多多练习,if函数比较实用,只有在实践中不断总结,熟能生巧,最终提高工作效率。

展开更多