获取具有值的列的最后 6 个单元格的平均值

问题描述 投票:0回答:1

我正在尝试对一列中最后 6 个单元格进行平均。这些数据将被添加到,我需要它在添加数据时自动更新。

Example Table

我试过了

=AVERAGE(TAKE(FILTER(C5:C528,C5:C528<>0), ,-6))

结果为全桌平均149.6

我也尝试过

=INDEX(AVERAGE(ARRAY_CONSTRAIN(SORT(FLATTEN(INDIRECT("A6:"&ADDRESS(1,MAX(ISNUMBER(C:C)*ROW(C:C))))),SEQUENCE(MAX(ISNUMBER(C:C)*ROW(C:C))), 0), 6, 1)))

结果是“您为此函数输入的参数太少。”

两者都是从该网站复制的,并且我的工作表的参考文献已更新。我试图获取值 143,它是示例中最后 6 个值的平均值。

excel average moving-average rolling-average
1个回答
0
投票

简单的事情:

=AVERAGE(OFFSET(A1,COUNTA(A:A)-6,0,6,1))

Excel 365 易于阅读的内容:

=LET(
    lastRow, COUNTA(A:A),
    startRow, lastRow - 5,
    AVERAGE(INDEX(A:A, startRow):INDEX(A:A, lastRow))
)

一些不必要的困难来迷惑你的朋友和敌人:

=LET(
    lastRow, COUNTA(A:A),
    startRow, lastRow - 5,
    range, INDEX(A:A, startRow):INDEX(A:A, lastRow),
    rangeArray, SEQUENCE(ROWS(range), 1, startRow, 1),
    AVERAGE(INDEX(A:A, rangeArray))
)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.