2022-04-30 06:41来源:m.sf1369.com作者:宇宇
正确公式可以写成=IF(F1<129,F1-10,IF(F1<249,F1-20,F1-50))
有3个结果的if函数多层嵌套可以这样理解
=IF(条件1,结果1,if(条件2,结果2,结果3))
如果多个条件和结果的嵌套,比如说有10个结果的话公式可以设置为(excel2003超过7层不支持,其他版本excel支持超过7层嵌套)
=IF(条件1,结果1,if(条件2,结果2,……if(条件9, 结果9, 结果10)))))))))
注意:在写公式的时候有个小技巧,条件可以从小到大写,也可以从大到小写,不要大小混着来
从小到大就是=IF(F1<129, F1-10,IF(F1<249,F1-20,F1-50))
从大到小就是=IF(F1>=249,F1-50,IF(F1>=129,F1-20,F1-10))
以上两个公式都对,都可以解决问题
初学者容易把公式写错,常见的情况会写成
=IF(F1<129,F1-10,IF(129=<F1<249,F1-20,if(F1>=249,F1-50)))
这种写法符合我们思维习惯,但不符合公式的语法,首先if函数条件不支持129=<F1<249这样的写法,你可以写成and(F1>=129,F1<249),即便这样了,公式写成
=IF(F1<129,F1-10,IF(and(F1>=129,F1<249),F1-20,if(F1>=249,F1-50))) 公式结果虽然是对的,但是公式看起来非常的冗长,逻辑关系之间存在重复,不够简洁,因为F1<129显示F1-10,否则在(F1>=129并且F1<249)的情况下显示F1-20,这个否则本身就说明剩下的条件肯定是大于或等于129了,再写一遍F1>=129的条件就显得多余了