【问题标题】:How do I find the average of only a partial range using Google Sheets?如何使用 Google 表格仅找到部分范围的平均值?
【发布时间】:2016-01-23 11:31:50
【问题描述】:

我正在尝试在 Google 表格中查找某个日期范围的平均值(不包括最小值和最大值)。问题是范围将继续增长。

我有从 range1 中删除 min 和 max 的公式,但我需要帮助弄清楚如何仅根据 range1 中的最后 X 个条目来计算此公式。

降低最小值和最大值:

=(SUM(A1:Z1)-MAX(A1:Z1)-MIN(A1:Z1))/(COUNT(A1:Z1)-2)

在这个sample doc 中,我只需要计算最后 8 个条目的平均值(同时删除最高值和最低值),以确定滚动的 6 个月平均值。每个月都会输入新条目。

【问题讨论】:

    标签: google-sheets


    【解决方案1】:

    试试这个:

    =(SUM(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2)))) - MAX(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2)))) - MIN(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2))))) / (COUNT(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2))))-2)
    

    =AVERAGEIFS(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2))),INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2))),"<>"&MAX(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2)))),INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2))),"<>" & MIN(INDIRECT(ADDRESS(2,MATCH(1E+99,2:2)-5) & ":" & ADDRESS(2,MATCH(1E+99,2:2)))))
    

    您可以将四个位置的- 5 替换为一个单元格值,例如,如果您想要多于或少于过去 6 个月,您可以将所需的月数放入一个单元格中,例如 A3。然后将5 替换为A3-1

    基本构建块是MATCH(1E+99,2:2),它将找到第 2 行中最后一个带有数字的单元格。因此,我使用 ADDRESS() 函数通过 INDIRECT() 返回开始和结束单元格地址。

    【讨论】:

    • 谢谢斯科特!我采纳了您的建议,将 -5 替换为单元格值,效果很好。
    • @JoshSwenson 很高兴为您提供帮助,请考虑通过单击答案旁边的绿色检查方舟将其标记为正确。
    猜你喜欢
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 2015-06-04
    • 2021-05-16
    • 2022-01-18
    • 1970-01-01
    • 2020-08-18
    相关资源
    最近更新 更多