繁体   English   中英

VLOOKUP日期范围

[英]VLOOKUP date in date range

有没有更简单的方法来完成这项任务?

我想在列表中查找值和日期,如果匹配或在原始日期的5天内返回日期。

到目前为止,我能够做到这一点的唯一方法是创建一个辅助键(A1)并在辅助键列表(F:F)中查找辅助键,并添加一个IFERROR以再次查找它但添加1等等。

例:

    A           B           C           D
1   table1_ky   table1_id   table1_dt   vlookup
2   99941275    999         1/1/2013    1/3/2013


    G           H           I
1   table2_ky   table2_id   table2_dt
2   99941277    999         1/3/2013

D2中的公式:

= IFERROR(VLOOKUP(TEXT(A2,0),F:H,3,0),IFERROR(VLOOKUP(TEXT(A2 + 1,0),F:H,3,0),IFERROR(VLOOKUP(TEXT(A2 +2,0),F:H,3,0), “无”)))

我希望能够设置“+1”变量的数量,这样我就可以将日期范围更改为5,10,30等,而不必使用多达30个IFERROR语句。

Excel中是否有可以执行此类操作的功能?

如果可能的话,我想避免使用VBA。

您可以使用这样的LOOKUP公式

=IFERROR(LOOKUP(2,1/(G$2:G$100=B2)/(H$2:H$100>=C2)/(H$2:H$100<=C2+5),H$2:H$100),"no")

这将在H2中找到最后一个日期:H100在C2和C2 + 5之间,并且列G值也匹配 - 不需要任何“连接”辅助列,您可以将5调整为您想要的任何值。

“最后”我的意思是位置 - 如果你想在多个匹配的情况下最早的日期(这是你当前的公式),那么切换到这样的“数组公式”:

=IFERROR(SMALL(IF((G$2:G$100=B2)*(H$2:H$100>=C2)*(H$2:H$100<=C2+5),H$2:H$100),1),"no")

CTRL + SHIFT + ENTER确认

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM