excel中如何分段求平均值?

这个函数咋写?求高手指点
=AVERAGE(D2:D366)
=AVERAGE(D367:D732)
=AVERAGE(D733:D1097)
=AVERAGE(D1098:D1462)
=AVERAGE(D1463:D1827)
=AVERAGE(D1828:D2193)
=AVERAGE(D2194:D2558)
=AVERAGE(D2559:D2923)
=AVERAGE(D2924:D3288)
=AVERAGE(D3289:D3654)
=AVERAGE(D3655:D4019)
=AVERAGE(D4020:D4384)
=AVERAGE(D4385:D4749)
=AVERAGE(D4750:D5115)
=AVERAGE(D5116:D5480)
=AVERAGE(D5481:D5845)
=AVERAGE(D5846:D6210)
=AVERAGE(D6211:D6576)
=AVERAGE(D6577:D6941)
=AVERAGE(D6942:D7306)
=AVERAGE(D7307:D7671)
=AVERAGE(D7672:D8037)
=AVERAGE(D8038:D8402)
=AVERAGE(D8403:D8767)
=AVERAGE(D8768:D9132)
=AVERAGE(D9133:D9498)
=AVERAGE(D9499:D9863)
=AVERAGE(D9864:D10228)
=AVERAGE(D10229:D10593)
=AVERAGE(D10594:D10959)
如何一次插入到这列后面?

假设公式从E2开始,则在E2输入
=AVERAGE(INDIRECT("d"&ROW()*365-728):INDIRECT("d"&ROW()*365-364))
下拉复制公式即可
注意,你给出的公式好像有点问题,我这个是等距365行求平均值追问

我这个数据是按年给的,有平年润年之分,不会弄呀....

追答

留下QQ,我加你假设你的B列是日期格式的数据,且是XXXX年XX月XX日格式,则E2公式可以修改为
=SUMPRODUCT(D:D,(B:B>=DATE(1997+ROW(),1,1))*(B:B<=DATE(1997+ROW(),12,31)))/sum(n(year(b:b)=row()+1997))
按CREL+SHIFT+回车结束公式输入,然后下拉复制公式即可
但这样,计算速度非常慢,所以,最好能实际看看你的表,看能否优化

追问

wo QQ190764017,是有1971~200的数据,要求年平均和月平均

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-20
不等距的
如果有其它列的数据做分段的参考标准,可以考虑sumif或sumproduct.
第2个回答  2011-11-20
=AVERAGE(INDIRECT("D"&2+(ROW()-2)*365&":D"&366+(ROW()-2)*366))下拉。
相似回答