Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays VBA数组公式,用于获取两个值之间的分数的说明_Arrays_Vba_Excel_Excel Formula - Fatal编程技术网

Arrays VBA数组公式,用于获取两个值之间的分数的说明

Arrays VBA数组公式,用于获取两个值之间的分数的说明,arrays,vba,excel,excel-formula,Arrays,Vba,Excel,Excel Formula,我有以下分数范围和描述单元格: Statement Critical Significant Average Minor Non-critical Grades 0.8 0.6 0.4 0.2 0 我有一个数据集,其中等级从0到1不等,我想为每个观察值创建一个字符串变量,该变量将根据等级打印上述语句 因此,对于一个随机单元,我的公式是: ={IF(X1>=A2:A6;B2:B6)} 但如果值为0.3,则此数组公式返回False。有

我有以下分数范围和描述单元格:

Statement  Critical  Significant Average  Minor Non-critical
Grades     0.8       0.6         0.4      0.2   0
我有一个数据集,其中等级从0到1不等,我想为每个观察值创建一个字符串变量,该变量将根据等级打印上述语句

因此,对于一个随机单元,我的公式是:

={IF(X1>=A2:A6;B2:B6)}

但如果值为0.3,则此数组公式返回
False
。有什么想法吗

您可以使用
索引
匹配
的标准组合来解决此问题。公式为(根据下面的屏幕截图):

=索引($F$2:$J$2,匹配(B8,$F$3:$J$3,-1))

在哪里

  • $F$2:$J$2
    -关键、重要等“声明”列表
  • B8
    -有问题的等级
  • $F$3:$J$3
    -等级范围
  • -1
    -作为
    匹配
    函数的参数为“大于”
截图:

在该示例中,请注意,
0.4

不完全正确-通常您输入一个公式,然后使用ctrlshift+enter创建一个数组公式,在您的情况下如下所示:

{=IF(X1>=A2:A6;B2:B6)}

但这对我来说不起作用-我认为你只需要
索引
匹配
方法就更容易了,除非你绝对需要一个数组公式