如果日期等于某个日期,则查找最接近的值

Finding closest value if date is equal to a certain date

我想要一个公式,可以找到某个日期最接近 100 的货币价值。 我做了这个公式:

=(IF("02-01-2009"=C2:C131104;INDEX($K:$K1104;MATCH(MIN(ABS(K2:K131104-100));ABS(K2:K131104-100);0));""))

但它会搜索整个 sheet 而不是仅搜索日期为 02-01-2009 的行。


数据

你的将不起作用,因为你需要在搜索你的值之前执行 IF 条件。如果您希望在没有任何其他列的情况下执行此操作(正如您的尝试所做的那样),则更正确的公式是:

=INDEX($K:$K;MATCH(MIN(IF($C:$C=$T;ABS($K:$K-100);1000));IF($C:$C=$T;ABS($K:$K-100);1001);0))

确保使用 CTRL + SHIFT + ENTER 输入它,因为它是一个数组公式。

此处单元格 T9 包含我匹配的日期。 1000 有点武断(比你与 100 的差值要大)。我检查日期。如果它匹配我 return moneyness - 100 如果它不匹配我 return 我们的任意 1000 所以这些被排除在最小值之外。一旦最小值找到与我们的日期匹配的最小差异,我将执行匹配和后续索引以获取具有最小差异的第一个货币值。