【问题标题】:Excel AVERAGEIF with TODAY() function as criteria以 TODAY() 函数为条件的 Excel AVERAGEIF
【发布时间】:2010-12-10 17:57:42
【问题描述】:

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

【问题讨论】:

  • 我需要找到过去 7 天 C 列中数据的平均值(我有过去几个月的数据)。日期在 A 列的电子表格中的每个条目上都标明了。我相信它需要是某种类型的 AVERAGEIF 函数。

标签: excel date conditional


【解决方案1】:

我没有要测试的 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 来优化公式(向下粘贴会增加每一行的范围)。

【讨论】:

  • 第二个函数不起作用,因为它将从当前行的日期开始计算大于 7 天的每个值的平均值。其中包括过去 7 天以及之后数据集中的每一天。
  • 很好,@jcmcbeth。由于AVERAGEIF 没有“介于”运算符,我认为解决方案需要数组公式而不是AVERAGEIF
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-16
  • 2015-04-03
相关资源
最近更新 更多