4

我在 G 列中有一个每日日期范围,在 H 列中有一系列股票价格。我想找到一个 52 周的滚动高点,即 H 列中当前日期和一年前同一日期之间的最高股价.

我正在使用以下公式:

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

因此,IF 条件将日期范围指定为在 G5 和 G5 之间减去 12 个月,并在 H 列中查找相应的值。

输入公式后,我按CTRL+SHIFT+ENTER。它似乎适用于第一次计算,但我无法为整个日期范围填写公式。我只是一遍又一遍地重复相同的值。

4

1 回答 1

3

我认为这在没有数组公式的情况下是可能的。也许:

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

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

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

=IFERROR(MAX(INDIRECT("H"&ROW()-369&":H"&ROW())),"")
于 2013-08-06T02:11:47.823 回答