如何在Excel中做一个dynamic范围的平均值? (VBA?)

我在Excel中有一个列表,基本上有两列: DateValue

 Col A |Col B |Col C|Col D |Col E ----------+------+-----+----------+----- Date |Value | |Date-range| 2012/01/01| 10| |2012/01/01| 8.33 2012/01/05| 5| |2012/01/07| 2012/01/07| 10| | | 2012/01/13| 1| | | 

我想在两个单独的单元格中设置两个date之间的平均值。 那可能吗?

所以,在Cell D1中,我把“2012/01/01”和Cell D2中,我把“2012/01/07”。 它应该返回该date范围内的平均值,在这种情况下(10 + 5 + 10)/ 3 = 8.33

我能够返回单元格(例如C100 )的两个date,但我不知道如何将它们包括在一个平均范围内。 还是有一个更聪明的方法来做到这一点?

正如你有Excel 2007,你可以使用AVERAGEIFS 。 为你的情况

=AVERAGEIFS(B1:B10,A1:A10,">="&D1,A1:A10,"<="&D2)

D1是您的最低date,D2是您的最高date,A1:B10是您的date和数值范围将返回8.33