在指定的date范围内查找最大值

我在G栏有一个date范围,在H栏有一个股票价格范围。我想要find一个滚动52周的高点,也就是当前date和前一年同一date之间H列的最高股票价格。

我使用下面的公式:

MAX(IF($G$5:$G$10757>=EDATE(G5,-12),IF($G$5:$G$10757<=G5,$H$5:$H$10757)))

因此,IF条件规定date范围介于G5和G5之间,less于12个月,并正在H栏中查找相应的值。

键入公式后,我按CTRL+SHIFT+ENTER 。 它似乎适用于第一次计算,但是我无法在整个date范围内填写公式。 我只是得到相同的价值重复一遍又一遍。

我想这可能没有数组公式。 也许:

 =MAX(INDIRECT("H"&MATCH(G5-365,G:G,0)&":"&"H"&ROW()),0) 

会适合(如果你对闰年灵活的话)。 (将返回#N / A,直到有超过365天的数据)。

编辑相同的结果,但没有错误显示:

 =IFERROR(MAX(INDIRECT("H"&ROW()-369&":H"&ROW())),"")