大家好,今天和大家分享“IF函数嵌套超过8层,如何简化公式?”以前在2003版时代,这是一个很常见的问题,因为2003版函数嵌套不能过7层,在2007版及2007以后的版函数的嵌套可以到64层了,一般人都用不到那么多嵌套,如果if函数嵌套8层,如何简化公式呢?请往下看
一、多层嵌套的if公式,晕吗?
IF(F3='补内胎',30,IF(F3='补外胎',150,IF(F3='垫带',25,IF(F3='加垫',10,IF(F3='换内胎',120,IF(F3='换外胎',6,IF(F3='废胎',-50,IF(F3='换备胎',8,0))))))))
二、Vookup简化多层if函数嵌套(短公式)
1、公式截图
2、公式
=VLOOKUP(A2,$E$2:$F$9,2,)
3、公式解释
如果我们许多个这样的判断 ,建议大家做一个数据源参照表,像区域E1:F9,用它来作vlookup函数第2参数数据源
Vlookup函数第1参数查找值A2
Vlookup函数第2参数:数据源,刚才在E1:F9自己构建的
Vlookup函数第3参:数返回数据源的第2列
Vlookup函数第4参数:用0,精确查找,这里的0简写了。
大家说,这个够简单了没有,且后面的数据在数据源可以任意修改和删除,喜欢用多层if函数的思想和理念要转变过来。
如果你不要引用区域,也可以用这个公式=VLOOKUP(A2,{'补外胎',150;'补内胎',30;'加垫',10;'垫带',25;'换内胎',120;'换外胎',6;'废胎',-50;'换备胎',8},2,)
三、Lookup简化多层if函数嵌套(比超短裙还短)
1、公式截图
2、公式
=LOOKUP(A2,$E$2:$F$9)
3、公式解释
先要把E列的数据升序排序
Lookup函数这里用2个参数的格式
Lookup函数第1参数查找值A2
Lookup函数第2参数就是自己构建的E1:F9,查找的结果就是返回数据源的最后一列
如果大家不用区域引用,也不用排序,就用这个公式=LOOKUP(A2,{'补内胎';'补外胎';'垫带';'废胎';'换备胎';'换内胎';'换外胎';'加垫'},{30;150;25;-50;8;120;6;10})或者用这个公式=LOOKUP(A2,{'补内胎',30;'补外胎',150;'垫带',25;'废胎',-50;'换备胎',8;'换内胎',120;'换外胎',6;'加垫',10})
四、Max简化多层if函数嵌套
1、公式截图
2、公式
=MAX(({'补外胎';'补内胎';'加垫';'垫带';'换内胎';'换外胎';'废胎';'换备胎'}=A2)*{150;30;10;25;120;6;-50;8})
3、公式解释
判断一维常量数组中{'补内胎';'补外胎';'垫带';'废胎';'换备胎';'换内胎';'换外胎';'加垫'}是否有等于查找值
如果有就和一维常量数组中{150;30;10;25;120;6;-50;8}对应的值相乘,等于的就返回对应的数量,不等于的就返回0
然后用Max取出最大值就是我们想的结果
五、Choose Find简化多层if函数嵌套
1、公式截图
2、公式
=CHOOSE((FIND(A2,'补外胎补内胎加垫鼠垫带鼠换内胎换外胎废胎鼠换备胎') 2)/3,150,30,10,25,120,6,-50,8)
3、公式简化
这个公式有点趣味性,看懂了,是这里面最有味道的公式,就像品茶一样,喝茶的人就品出不同的茶有不同的味道
大家一看这个公式的亮点为什么公式会出现“佛山小老鼠”鼠字?,是为了保持统计每一个查找值都是3个字符,经典吧。
find函数直接找到的位置不是1,2,3,4……,要加个2再除以3才能得到1,2,3,4……,这个思路也爽吧。如果这二点都看懂了,你一定会说这个公式好有味道
最后用choose这个函数,find作它的第1参数,返回第1参数后面的数据,大家记得choose这个函数是从第2参数后面开始编索引号,也就是第2参数编号是1,第3参数是2,依次类推。
六、小结:
关于这一类问题建议大家用Vlookup和Lookup函数处理,其它方法,大家学学解题思路,对提高自己的函数水平很有帮助
七、最近新开班通知:
1、新班开班通知:2017-7-16开一个星期天函初晚上班,每一个星期天的晚上8点到10点上课,学费100元,想学的加我微信18664243619
八、近10期文章:大家可以用手指点击就可以查找看了
百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网92to.com,您的在线图书馆!
来源: http://www.92to.com/bangong/2017/07-25/25659866.html