分享

IF专题 | 初级+中级+高级,变态级……

 Excel办公实战 2021-06-29

案例昨天我们把IF的基础语法及参数给大家做了一次详解,想必大家已经对此非常熟悉了,今天我们主要是通过一些案例,来巩固!难度逐渐增加,至于变态级……往下看看吧!

为了让大家更加真实的感受到实际操作是怎么写公式的,小编全部通过录制动画的方式给大家看一下公式的书写过程!

下面我们就直接进入案例讲解!除了一般写法,小编也会做一些实战写法和扩展写法!

内容较长,全部干货!沏茶,搬好凳子,我们开始……

案例01 | 初级 - 是否完成目标?

案例说明:实际大于等于目标,达成,否则未达成!

=IF(C2>=B2,"是","否")

▼ 动画演示公式书写

肯定有很多人书写的习惯和小编不同,为什么要先写完整个结构,再填充第二、第三参数,其实是误解,这里主要是二三参数是中文,其他都是英文,来回切换麻烦,如果你已经习惯切换,可以依次写!

可能还有新手使用函数公式向导写的,但是入门后还是不推荐的,嵌套公式非常不便!

实战写法

实战中我们一般不会直接使用两个数进行比较,因为经常有小数的情况,存在浮点数,所以一般都会考虑相加,添加ROUND函数进一步处理,确保万无一失!

=IF(ROUND(C2-B2,0)>=0,"是","否")

本文由“壹伴编辑器”提供技术支持

案例02 | 中级 - 数据录入校验!

案例说明:根据用户录入和系统的数据,判断是否一致,如果不一致,请写出多多少或者少多少!

▼公式:

=IF(B2=C2,"正确",IF(C2>B2,"多" & C2-B2,"少" & B2-C2))

▼ 动画演示-多层嵌套写法

写法要点:

我是非常了解大家的苦恼了的,那就是写这种多层嵌套的公式,非常容易少写或者多写括号!我的建议:写一个IF就把一对括号先写好,然后补充参数,这样不管写多少层都可以确保万无一失!

一般出错的人,都是写不断的写,最后忘记写了几层,需要几个括号的,就不断的回查!非常容易出错且效率低!

知识点回顾:

1、嵌套层数,2003版本 最多7层,2007+版本,64层!

2、2003如何突破限制?如果超过7层,可以把前7层,定义名称,使用定义名称替换对应的条件,这样就突破第一层7层,更多层同理!

不过2003版本是在是太老了,非常不推荐了,2003版本之后已经迭代了六七个打的版本的,添加了很多非常好用的东西!

实战写法:也可以叫做替代方案!

▼公式:

=TEXT(ROUND(C2-B2,),"多 0;少 0;正确;@")

▼ 动画演示-书写方法

在实战中,尤其模板设计,一般会考虑研究都要加上ROUND处理浮点数!

且这种多少的问题,一般使用TEXT处理更为简洁!

TEXT第二参数有四段:正数;负数;零;文本!,正好可以显示我们的几种情况!

0是数值占位符,这块内容不是本期主题,可以阅读我提供的扩展阅读进一步学习!

拓展阅读:

TEXT函数扩展学习:TEXT-那个学不会的函数

第二参数格式问题 :Excel自定义单元格格式详解-【数值篇】

本文由“壹伴编辑器”提供技术支持

中级难度,除了这种嵌套,还有一种多条件同时满足,满足其中一个条件的问题!

所以我们再补充一个案例,就拿经典的退休来聊吧!

案例03 | 中级 - 男女退休判断

案例说明:根据性别及年龄,判断是否已经退休,达到退休显示退休,否则显示为空!

▼公式:

=IF(OR(AND(B2="男",C2>=60),AND(B2="女",C2>=55)),"退休","")

提示 :法定退休年龄 : 男性 - 60,女性 - 55!

知识点:

1、AND函数:表示并且关系,也就是其中的条件全部满足,才返回True!

2、OR函数:表示或者关系,其中一个满足条件就返回TRUE!

公式解读

根据退休年龄的规定,翻译一下应该就是 

男性 并且 年龄大于等于60  或者   女性 并且 年龄大于等于55

以上写法是很常规的写法,且可读性是最好的,下面我们来一种拓展写法,主要涉及的知识是逻辑值的应用,与IF关系不是很大,大家了解一下即可!

拓展写法:了解一下即可!

=IF((B6="女")*(C6>=55)+(B6="男")*(C6>=60),"退休","")

中级我们就讲两个案例,下面进入高级部分!

高级部分,我们主要讲解一下参数数组化的情况!比较经典的就是IF重构区域来辅助VLOOKUP反向查找!

案例04 | 高级 - VLOOKUP反向查找!

▼ 我是一条普通公式

=VLOOKUP(E2,IF({1,0},B2:B14,A2:A14),2,)

▼ 动画演示-书写方法

这个主题,我已经写过专题讲解,这里主要把当时留的坑补上!为什么不需要三键录入?这里主要是区域的重构,并没有数组多重计算的特征,重构后依旧是单元格区域,并非数组!

关于IF{1,0} 这种写法,我已经写过专题,

请移步详解VLOOKUP反向查找中的IF({1,0}是什么意思?

本文由“壹伴编辑器”提供技术支持

下面的一个案例,我们讲解需要三键的情况!第二参数数组!

案例05 | 高级 - IF区域重构,多条件查找的应用

▼ 我是一条数组公式,请“三键”我!

=VLOOKUP(E2&F2,IF({1,0},A2:A10&B2:B10,C2:C10),2,0)

▼ 动画演示-公式书写

公式解读:

1、IF在公式中主要的作用是把班级和姓名组合到一起,形成一列,成绩作为另一列,这样班级+姓名,条件就是唯一的了,我们就可以使用VLOOKUP,精确的查找到二班张三的成绩!

2、这个公式为什么要三键,因为 A2:A10&B2:B10 ,需要多重计算,且计算后是数组,而不再是单元格区域!

本文由“壹伴编辑器”提供技术支持

还有一个“变态级别”!倒不是说难度有点多,是因为用法有点奇特!涉及到一些数组的“多维”和降维问题!

案例06 | 变态 - 配合N/T降维

▼ 我是一条数组公式,请“三键”我!

=SUM(VLOOKUP(T(IF({1},$A$2:$A$6)),$D$2:$E$10,2,)*$B$2:$B$6)

▼ 动画演示-书写方法!

以上公式涉及到IF第一参数常量数组,使用后,其实相对于,让第二参数,每个单元格都形成了一个“漂浮”在空中的颗粒,相互独立,空间三维,T的作用主要是把他们拉回到二维可计算,且不影响他们的独立性!

三维的一些其他案例可以阅读:函高 | OFFSET进阶引用之参数数组化

新手理解略有难度,慢慢来吧!关于三维引用及降维等知识点,难度较大,比较适合函数爱好者,对普通办公族不太适合,后续我们按照之前所讲,放到我们的知识星球来分享对应的主题!

本文由“壹伴编辑器”提供技术支持

本篇完结!你是否对IF有了新的认知?你真的懂她吗?

本篇Excel演示附件下载,请星友们移步小窝下载,公众号无法上传附件!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多