特定单元格的Excel平均值

ktca8awb  于 2023-03-20  发布在  其他
关注(0)|答案(4)|浏览(160)

基本上,我想做的是找到这3个单元格的平均值,如果数字大于5。所以我尝试了averageif(c2,e2,h2 ",〉5”)。但由于这些单元格不是范围,公式不起作用。有什么建议我使用不同的公式

hmtdttj4

hmtdttj41#

AVERAGEIF不适用于不连续的区域。您也可以尝试如下所示。这不需要在输入公式后按确认键CTRL SHIFT ENTER

单元格I2中使用的公式

=IFERROR(SUMPRODUCT(--(CHOOSE({1,2,3},C2,E2,H2))*--(CHOOSE({1,2,3},C2,E2,H2)>5))/INDEX(FREQUENCY((C2,E2,H2),5),2),"")

还有一个选择:

=IFERROR(SUMPRODUCT(--(CHOOSE({1,2,3},C3,E3,H3))*--(CHOOSE({1,2,3},C3,E3,H3)>5))/SUMPRODUCT(--(CHOOSE({1,2,3},C3,E3,H3)>5)),"")

nbnkbykc

nbnkbykc2#

另一个要考虑的选项

=AVERAGE(IF(INDEX(C2:H2,,{1,3,6})>5,INDEX(C2:H2,,{1,3,6})))

注意:^^这是一个数组函数,(取决于您的版本)需要使用ctrl+shift+enter进行确认,而不仅仅是enter。
如果你有微软365(也可能是Excel 2021,虽然我不能测试)。

=LET(f,INDEX(C2:H2,,{1,3,6}),AVERAGE(IF(f>5,f)))

M365的动态计算意味着你可以直接输入。

eit6fx6z

eit6fx6z3#

任何*IF(S)类型的公式都不喜欢分段范围。您需要使用其他接受数组的公式:

=AVERAGE(IF(CHOOSE({1,2,3},C2,E2,H2)>5,CHOOSE({1,2,3},C2,E2,H2)))

根据用户的版本,可能需要使用Ctrl-Shift-Enter进行确认

zpqajqem

zpqajqem4#

旁注:
AVERAGEIF函数不适用于非连续范围,因此我们需要使用单独的公式,此外,如果任何一个单元格中存在TEXT,则它也需要绕过#DIV/0错误,并提供所需的输出。

因此,请参考以下两个备选公式,

=AVERAGE(IFERROR(--CHOOSE({1,2,3},C2,E2,H2),""))

第二个公式具有上面公式所没有的另一个优点,当我们需要多个工作表单元格中的AVERAGE时,该公式有效

=SUM(IFERROR(--CHOOSE({1,2,3},C2,E2,H2),0))/INDEX(FREQUENCY(IFERROR(--CHOOSE({1,2,3},C2,E2,H2),0),0),2)

上面的公式是一个数组公式,因此如果您使用的不是Excel 2021O365,则需要按CTRL SHIFT ENTER确认。

相关问题