我在 G 列中有一系列每日日期,在 H 列中有一系列股票价格。我想找到 52 周的滚动高点,即 H 列中当前日期和同一日期之间的最高股票价格1年前。
我使用以下公式:
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
。它似乎适用于第一个计算,但我无法填写整个日期范围的公式。我只是一遍又一遍地重复得到相同的值。
最佳答案
我认为没有数组公式这是可能的。也许:
=MAX(INDIRECT("H"&MATCH(G5-365,G:G,0)&":"&"H"&ROW()),0)
会适合(如果你对闰年灵活的话!)。 (将返回 #N/A,直到数据超过 365 天)。
编辑相同的结果,但没有显示错误:
=IFERROR(MAX(INDIRECT("H"&ROW()-369&":H"&ROW())),"")
关于excel - 查找指定日期范围内的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18070363/