ARRAYFORMULA中的Google表格AVERAGE函数

时间:2020-06-21 11:29:32

标签: google-sheets google-sheets-formula array-formulas

我想使用= IFERROR(AVERAGE(B29:H29),“”)的ARRAYFORMULA版本。这是为了计算7列滚动平均值,该平均值将使用数组公式自动拖动。我知道AVERAGE不能与ARRAYFORMULA一起使用,但是我一直在努力寻找其他选择。

1 个答案:

答案 0 :(得分:1)

如评论中所述,您可以修改上一个答案。

获取当前数字和后6个数字的移动平均值的另一种方法是,将两个移动总和的差除以这样的计数:

=ArrayFormula(if(C1:1="","",
   (sumif(column(C1:1),"<"&column(C1:1)+7,C1:1)-sumif(column(C1:1),"<"&column(C1:1),C1:1))/
   countifs(column(C1:1),"<"&column(C1:1)+7,column(C1:1),">="&column(C1:1),C1:1,"<>")))

(您不能使用AVERAGEIFS或SUMIFS,因为它们不适用于数组公式)。

为了完整起见,更常用的移动平均值是从第一个数字开始,然后是前两个数字的平均值,等等:

=ArrayFormula(if(C1:1="","",
    (sumif(column(C1:1),"<="&column(C1:1),C1:1)-sumif(column(C1:1),"<="&column(C1:1)-7,C1:1))/
    countifs(column(C1:1),"<="&column(C1:1),column(C1:1),">"&column(C1:1)-7,C1:1,"<>")))

enter image description here