在 Excel 中计算单元格中数组结果的平均值

In Excel calculate AVERAGE of an array result which in a cell

我有以下公式可以查找 A1:A10 适当的分数。

{=INDEX(Table1[ScoreNum],MATCH(A1:A10,Table1[ScoreWord],0))}

我需要计算整个数组的平均结果。

但是当使用这个时:

{=AVERAGE(INDEX(Table1[ScoreNum],MATCH(A1:A10,Table1[ScoreWord],0)))}

Returns 使用 Index/Match 的第一个查找结果,相对于 returns 所有 return 可用值的平均值与此数组公式。

怎么做到的?


The sample Workbook file

工作表 1

工作表 2:表 1

注:B11中的公式为:=AVERAGE(B1:B10)和return为真值。我需要 return 这个而不使用 B 辅助列,直接在单个单元格 (A11) 中,公式的真实形式如图所示。

非常真诚。

我会使用这个 array-formula:

=AVERAGE(AVERAGEIF(Table1[Column1],A1:A10,Table1[Column2]))

到enter/confirm一个数组公式,按住ctrl + shift同时点击 enter。如果操作正确,Excel 将在公式栏中看到的公式周围放置大括号 {...}

AVERAGEIF 函数 returns 数组 {1;0.8;1;0.2;0.6;0.8;1;1;0.6;0.2} 就是您在屏幕截图中的列 B 中显示的内容。

然后我们通过将 AVERAGEIF(.. 嵌套在 AVERAGE 函数中来 [=​​15=] 该数组。

另一种方法:

=AVERAGE(INDEX(Table1[Column2],N(IF({1},MATCH(A1:A10,Table1[Column1],0)))))

也作为数组公式输入。