EXCEL中,某列数据为日期格式,相应的另一列每天都有数据生成,求自动计算最近7天发生数据的平均值的公式

2024-12-04 14:09:33
推荐回答(2个)
回答1:

如果每天只生成一个数据,并且顺序来,这样最好办,直接用average函数求最近7行的平均值。
如果日期没有顺序,而且每天不确定有几笔数据:
=(SUMIF($A$1:$A$17,"<=" & A9,$B$1:$B$17)-SUMIF($A$1:$A$17,"<=" & A9-7,$B$1:$B$17))/7
上面公式假定a1:a17是日期区,b1:b17是对应的数据区,为了公式能拖动,用了绝对引用。公式是计算a9之前7天的平均值。
原理:a9之前的条件求和减去a9-7天之前的求和,除以7天。

回答2:

设定A列为日期,B列为数据,在答案单元格输入:
=AVERAGEIF(A:A,AND("<"&DATE(YERA(TODAY()),MONTH(),DAY()+7,>&DATE(YERA(TODAY()),MONTH(),DAY()-7),B:B)