我有以下分数范围和描述的单元格:
Statement Critical Significant Average Minor Non-critical
Grades 0.8 0.6 0.4 0.2 0
我有一个数据集,其中成绩从0到1,并且想为每个观察创建一个字符串变量,根据成绩打印上述语句。
因此,对于随机单元X1
,我的公式为:
={IF(X1>=A2:A6;B2:B6)}
但是如果值为0.3,则此数组公式返回False
。有任何想法吗?
答案 0 :(得分:1)
您可以使用INDEX
和MATCH
的标准组合来解决此问题。公式将是(按照下面的屏幕截图):
=INDEX($F$2:$J$2,MATCH(B8,$F$3:$J$3,-1))
其中
$F$2:$J$2
- '陈述列表'例如重要的,重要的B8
- 有问题的等级$F$3:$J$3
- 等级范围-1
- 作为MATCH
函数的参数大于' 截图:
在该示例中,请注意0.4 < score <= 0.6
给出Significant
的分数。但是,您可能希望该范围返回Average
,在这种情况下,整个MATCH
函数需要一个偏移,例如:
=INDEX($F$2:$J$2,MATCH(B8,$F$3:$J$3,-1)+1)
但请注意,对于0
成绩,除非您创建新的语句,否则会出现#REF!
错误。例如&#39;不到关键&#39;得分为-1。
另外,请注意您的数组公式:
={IF(X1>=A2:A6;B2:B6)}
不太正确 - 通常你输入一个公式,然后使用 ctrl shift + 输入来创建一个数组公式,在你的情况下会是这样的:
{=IF(X1>=A2:A6;B2:B6)}
但这对我没有用 - 我认为除非你绝对需要一个数组公式,否则你更容易采用INDEX
和MATCH
方法。