excel中 IF函数嵌套层数太多可以用什么函数替代
IF函数,大家已经很熟悉了,在本平台上也多次讲过这个函数,这个函数在EXCEL函数中起着很重要的作用,它的应用也非常广泛。但这个函数有一个最大的弊端,就是当嵌套过多时,函数的读写会非常困难。不仅对新手,对于精通EXCEL函数的人员也是一样,一层一层的看,往往还会有疏忽的时候。
比如下面判断运动员得奖情况的一个函数公式:
有了运动员的成绩,利用RANKH函数很容易得到排名,然后用IF函数的4层嵌套得出"金牌"、"银牌"、"铜牌"、"仅得分,无奖牌"、"参加者"五种情况,在书写时要格外的小心,每层的嵌套不要有书写的错误。返回下面的结果。
为了避免多层嵌套的麻烦,上面的公式可以用CHOOSE函数来书写,我们先讲解一下此函数的意义:
Choose函数:其作用是从参数列表中选择并返回一个值。
语法:Choose(index_num, value1, [value2], ...)参数Index_num 必要参数,数值表达式或字段,它的运算结果是一个数值,且界于 1 和254之间的数字。 或者为公式或对包含 1 到 254 之间某个数字的单元格的引用。
如果 index_num 为 1,函数 CHOOSE 返回 value1;如果为 2,函数 CHOOSE 返回 value2,以此类推。
如果 index_num 小于 1 或大于列表中最后一个值的序号,函数 CHOOSE 返回错误值 #VALUE!。
如果 index_num 为小数,则在使用前将被截尾取整。
Value1, value2, ... Value1 是必需的,后续值是可选的。这些值参数的个数介于 1 到254之间,函数 CHOOSE 基于 index_num 从这些值参数中选择一个数值或一项要执行的操作。参数可以为数字、单元格引用、已定义名称、公式、函数或文本。
好了,有了CHOOSE函数的知识,我们看看上面的公式用此函数该怎么写;如D2的公式
写成:=CHOOSE(IF(C2<=4,C2,5),"金牌"、"银牌"、"铜牌"、"仅得分,无奖牌"、"参加者")
这个公式中避免了IF的多重嵌套,而且读起来也非常容易,五种情况也非常的清楚明了。