2009-10-28 119 views
2

我有c列中的值,如果他們發生在過去七天(列a中的相應日期),我想要平均。我無法讓averageif函數正常工作,因爲我需要每個單獨的數據單獨評估,如果它在最近七天內。這似乎是一個將始終使用的函數,但我搜索了45分鐘並找不到任何內容。Excel AVERAGEIF與TODAY()函數作爲標準

+0

如何處理一些示例數據 - 讓每個人都清楚你正在問什麼。 –

+0

我需要查找過去七天C列中數據的平均值(我有過去幾個月的數據)。日期是針對A列中電子表格中的每個條目指示的。我相信它需要是某種類型的AVERAGEIF函數。 – Cameron

回答

4

我沒有Excel 2007進行測試,但我給它一個鏡頭:

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

我承擔的「過去7天」是指相對於TODAY(),而不是相對於其他一些一排數據?

如果你想要時間敏感度,而不是僅僅看今天和6天前回來的任何東西(即總共7次),使用NOW()而不是「TODAY()」和「-7」天)。

如果每一行數據應有的過去7天與自己相比,平均而非相比,今天(即你希望每個行中的不同的移動平均),使用這樣的:

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

在第2行並粘貼,$ A2將調整爲使用當前行的日期/時間的參考點。如果日期已經排序,則可以使用$ A2和$ C2優化公式,而不是$ A $ 100和$ C $ 100(粘貼將增加每個額外行的範圍)。

+0

第二個函數不起作用,因爲它會平均每個距離當前行日期大於7天的值。其中包括過去7天和數據集中的每一天。 – jcmcbeth

+0

好,@jcmcbeth。由於'AVERAGEIF'沒有「between」運算符,我認爲解決方案需要一個數組公式,而不是'AVERAGEIF'。 – richardtallent