了解选择功能

时间:2019-09-24 04:54:01

标签: excel excel-formula

最近,我遇到了一个称为“ Choose”的excel函数,该函数被称为嵌套if函数的替代方法。我在网上看到了一些示例,如下所示,比较了嵌套的if和select函数。

对于给定的条件,

Result          Score
Poor            0 - 50
Satisfactory    51 - 100
Good            101 - 150
Excellent       over 151

嵌套的if条件将是这样,

=IF(B2>=151, "Excellent", IF(B2>=101, "Good", IF(B2>=51, "Satisfactory", "Poor")))

在相同情况下,选择功能将为

=CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent")

我了解到select函数基于给定值列表(真实条件)中的索引号或位置号起作用。

我只是在想如果再添加一个如下表所示的类别,即

,该怎么办?
Result          Score
Not Applicable   <0
Poor            0 - 50
Satisfactory    51 - 100
Good            101 - 150
Excellent       over 151

如果我在选择中给出这样的公式,

=CHOOSE((B2<0)+(B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Not Applicable", "Poor", "Satisfactory", "Good", "Excellent")

但是,对于B2 = 21这样的值,我可能最终会报错

这只是出于学习目的,如果有人在使用选择选项时帮助我处理这些情况,那将是很好的选择。

1 个答案:

答案 0 :(得分:0)

尝试以下操作:

=IFERROR(CHOOSE(($D1>150) + ($D1>100) + ($D1>50) + ($D1>0), "Poor", "Satisfactory", "Good", "Excellent"),"Not Applicable")

Solution

您可以使用 IFERROR 返回负数的Not Applicable。如果该单元格为空白,它将被视为0,并且公式将返回Poor

如果您不想为空白单元格显示poor,则可以使用以下嵌套的 CHOOSE 函数在空白框中显示所需的结果,例如空白""以下公式:

=CHOOSE(IF(LEN($D1)=0,1,2),"",IFERROR(CHOOSE(($D1>150) + ($D1>100) + ($D1>50) + ($D1>=0), "Poor", "Satisfactory", "Good", "Excellent"),"Not Applicable"))