EXCEL:需要返回上次值 >= 当前值的公式

EXCEL:需要返回上次值 >= 当前值的公式

在我当前的 Excel 电子表格中,A 列显示日期,B 列显示标准普尔 500 收盘价。

我正在尝试编写一个公式,返回上次收盘价大于或等于今天收盘价的日期。

我尝试使用 SUMPRODUCT、MATCH、VLOOKUP 和 INDEX,但无济于事。有什么建议吗?

我的电子表格如下所示:

截屏

我想要一个公式进入单元格 B8。

答案1

第一步是确定最近的收盘价大于或等于今天的收盘价。看看全部收盘价大于或等于今日收盘价的行。在您的示例数据中,它们是第 13、14、16、17、19、20、22、23 和 24 行(可能还有更多行,时间更久远)。哪一个是最新的?是 13,因为它是列表中最小的(最小)行号。

现在,让我们看看我们是否可以构建该列表。我们似乎想评估

如果(Bn>=B12,n(没有什么)

我们实际上可以做类似的事情:

=MIN(IF(B13:B100>=B$12, ROW(B13:B100)))

用大于可能包含数据的最大行号的数字替换100。(我想,在您的例子中,您可以使用 365 或 260(52×5),或者如果您有多年的数据,可以使用其中一个的倍数。)

以上是数组公式。因此,为了使其工作,您必须 在输入公式后输入Ctrl++ 。ShiftEnter

但你不需要行号;你想要的是数据。这部分很简单:

=INDEX($A:$A, MIN(IF(B13:B100>B$12, ROW(B13:B100))))

再次强调,输入公式后必须输入Ctrl++ ShiftEnter

相关内容