在EXCEL公式中,IF函数最多可以判断7个,现在我需要判断的数据有50个,请问要用什么函断,怎么用?

如题所述

if的嵌套最大可以为7层,上面的公式已经用到了极限。虽然说可以用一些旁门左道来“突破”这个限制,但也只是一种堆沙式的游戏,如上例,可以采用以下方式:=IF(A1=1,"a",IF(A1=2,"b",IF(A1=3,"c",IF(A1=4,"d",IF(A1=5,"e",IF(A1=6,"f",IF(A1=7,"g","")))))))&IF(A1=8,"h",IF(A1=9,"I",""))……
这样的用法,真是叫人兴味荡然,昏昏欲睡,EXCEL何必还要学下去,还不如去跟儿子摆积木更好玩呢!
所以说,if最好不要多用。不是说不能用,而是说用多了会叫人伤心。
其实EXCEL里准备了许多办法来替代上面的愚蠢的做法。
比如CHOOSE函数。=CHOOSE(A1,"a","b","c","d","e","f","g","h","i"),这是不是方便多了?CHOOSE的参数清单可以有29项之多,一般足够你使用了。如果还不够,那么请看下面:
=LOOKUP(A1,{1,2,3,4,5,6,7,8,9;"a","b","c","d","e","f","g","h","i"}),你可以尽情地输入参数,只要公式内容长度允许(规定公式内容长度为1024个字符)。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-27
excel2007可实现50层嵌套,或者考虑用LOOKup相关函数
祝你成功!
第2个回答  2011-02-27
我一般用的方法是另外用几个列,每个列判断一个,真为1假为0,再用product函数把它们相乘,用if判断一下。这样万一出错了也比较好找出来。
第3个回答  2011-02-27
用choose函数试一下。
或者分成几步来进行计算。
第4个回答  2011-02-27
建议用自定义函数,用VBA编写,便于阅读和修改,使用方法和系统函数一样,只要一个函数名就行了。
相似回答