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 不正确的值。
我在从范围中提取数据时遇到问题 - 我觉得这应该可以通过 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 不正确的值。