带有TODAY()函数的Excel AVERAGEIF作为条件

时间:2009-10-28 04:22:34

标签: excel date conditional

我在列c中有值,如果它们在过去七天内发生,我想要求平均值(列a中的相应日期)。我无法使averageif函数正常工作,因为我需要单独评估每个单独的数据,如果它在过去七天内。这似乎是一个将一直使用的功能,但我用谷歌搜索了45分钟,找不到任何东西。

1 个答案:

答案 0 :(得分:4)

我没有Excel 2007进行测试,但我会试一试:

 = AVERAGEIF($A$2:$A$100, ">=" & (TODAY()-6), $C$2:$C$100)

我认为“过去7天”意味着与TODAY()相比,而不是与其他一些数据相比?

如果你想要时间灵敏度,请使用NOW()而不是TODAY()和“-7”而不是“-6”,而不仅仅是查看今天和6天前的任何事情(即总共7天) )。

如果每行数据应该具有过去7天的平均值与自身相比而不是与今天相比(即,您希望每个行的滚动平均值不同)行),使用类似的东西:

 = AVERAGEIF($A$2:$A$100, ">=" & ($A2-7), $C$2:$C$100)

在第2行并粘贴,$ A2将调整为使用当前行的日期/时间的参考点。如果已经对日期进行了排序,您可以使用$ A2和$ C2而不是$ A $ 100和$ C $ 100优化公式(粘贴将增加每个附加行的范围)。