如何使用Google表格找到仅部分范围的平均值?

时间:2016-01-12 21:59:46

标签: google-sheets

我试图在Google表格中找到一系列日期的平均值(不包括最小值和最大值)。问题是范围将继续增长。

我有一个公式可以从range1中删除min和max,但我需要帮助找出如何仅根据range1中的最后X个条目来计算这个公式。

Drop min&最大:

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

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

1 个答案:

答案 0 :(得分:0)

试试这个:

=(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)

OR

=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()的开始和结束单元格地址。