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

时间:2018-12-06 14:36:05

标签: excel indexing lookup

我从某个范围提取数据时遇到了问题-我认为应该可以通过索引/匹配组合来解决此问题,但到目前为止我还无法使其正常工作。

我将提取数据的范围如下:

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与col A匹配,并将日期与col B中最接近的日期(最多但不大于)匹配,以提取用户详细信息。例如,如果我的ID = 1,日期= 2001年1月12日-这应该返回用户值PK。

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

此公式将需要应用于大约。 1,000行,查找范围约为。 65,000行。

任何建议将不胜感激。 干杯,蚂蚁

1 个答案:

答案 0 :(得分:1)

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的用户。

同样,这仅在数据已排序时才有效。如果没有,它将返回不正确的值。

enter image description here