excel - 查找指定日期范围内的最大值

标签 excel datetime excel-formula max excel-indirect

我在 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/

相关文章:

postgresql - (PostgreSql) 根据给定的开始日期、结束日期和以分钟为单位的时间间隔计算时间段

string - 将带有克拉的字符串转换为数字(并求值)

excel - 基于Excel工作表中的单元格颜色和文本颜色子集数据框

vba - 在一百个工作簿中应用宏,然后将结果复制到主 Excel 文件中

php - 为什么在我的第二个示例中 DateTime::createFromFormat() 失败并返回一个 bool 值?

excel - 比较时间值的公式

excel - 用 vba 删除最后 4 个字符并替换同一单元格中的新单词/数字

mysql - 无法通过 Excel 中的 ODBC 连接(虽然连接测试工作正常)

html - 将粗体字体替换为文本周围的 html 粗体标签

c++ - 如何获取 C++ 格式的当前 DateTime(如 .NET 中的 System.DateTime.Now)