Excel - 基于多个条件的查找值 - 最近的日期

Excel - lookup value based on multiple criteria - nearest date

我在从范围中提取数据时遇到问题 - 我觉得这应该可以通过 index/match 组合来解决,但到目前为止我还没有成功。

我将从中提取数据的范围结构如下:

ID  date    User
1   01/01/2000  BA
1   04/01/2002  JI
1   01/11/2001  PK
2   03/03/2004  DT
2   03/05/2008  BI
2   04/06/2002  KW
3   02/12/2007  NK
3   06/09/2005  LW
3   01/08/2005  DH

我正在尝试将特定 ID 与列 A 和日期与列 B 中的最近日期(直到但不大于)相匹配,以提取用户详细信息。例如,如果我有 ID = 1,日期 = 01/12/2001 - 这应该 return PK 的用户值。

我曾尝试将此公式结合使用:=MIN(IF(A1:B6>E1,A1:B6)) 与 index(match * match) 以使用 ID 和日期作为多个条件,但我一直收到 #N/A 错误。

这个公式需要应用到大约。 1,000 行,查找范围约为。 65,000 行。

如有任何建议,我们将不胜感激。 干杯,蚂蚁

IF 你可以对前两列进行排序然后这个正常的公式将起作用:

=VLOOKUP(E2,INDEX(B:C,MATCH(D2,A:A,0),0):INDEX(B:C,MATCH(D2,A:A,0)+COUNTIF(A:A,D2)-1,0),2,TRUE)

它会创建一个较小的范围供Vlookup 搜索。该较小的数据集将仅包含具有正确 ID 的日期和用户。

同样,这仅在数据已排序时有效。否则它将 return 不正确的值。