我正在使用averageifs函数,如果其中一个条件为真,我需要一列我需要计算平均值。
我尝试使用OR函数,并尝试了大括号,但都给了我错误。
= AVERAGEIFS(N1:N612,I1:16 12,{ “FL”, “IF”})
还有更多的范围,但编码很好。
要清楚,如果列“I”包含(具体地)字母FL, OR 字母IF,我想返回平均值。任何其他字母都应表示该条目不是平均值。
TIA!
答案 0 :(得分:5)
AVERAGEIFS
额外条件是布尔AND运算符,它不能执行OR运算。但是由于你的专栏没有改变,我们可以自己实现这一点:
这是使用数组公式的简单方法(使用 ctrl + shift + 输入输入):
=AVERAGE(IF((I1:I612="IF")+(I1:I612="FL"),N1:N612))
或者,如果您不喜欢使用数组公式,则基本上使用SUMPRODUCT
和COUNTIF
手动执行此操作:
=SUMPRODUCT((I1:I612="IF")*(N1:N612)+(I1:I612="FL")*(N1:N612))/(COUNTIF(I1:I612,"IF")+COUNTIF(I1:I612,"FL"))
答案 1 :(得分:2)
Chancea已经提供了一些很好的技术,我将再列出一个避免数组公式的技术,因为很多人会发现它更容易阅读,避免了副产品。
=(SUMIF(I1:I612,"FL",N1:N612)+SUMIF(I1:I612,"IF",N1:N612))/(COUNTIF(I1:I612,"FL")+COUNTIF(I1:I612,"IF"))
答案 2 :(得分:0)
不要认为Excel具有此功能,但在Google表格中,我一直在使用以下内容来实现类似的结果
=average(filter($A:$A,($C:$C=$E$6)+($C:$C=$E$7)))
给我A:A
中C:C
的{{1}}与E6
或E7
与ifs
/ sumifs
等不同,过滤器使用的是=
,而不是逗号,因此使用的是$C:$C=$E$6
,而不是$C:$C,$E$6
刚输入数学符号(所以<>
而不是"<>"&
)