2017-02-23 1072 views
0

我正在查找索引和匹配公式或Vlookup公式以仅返回基于日期范围的提供程序名称。例如,我需要供应商的名称作为供应商的开始日期和结束日期范围内的ID的DOS。即使提供者的结束日期是空白/空白。Excel - 根据日期范围指定vlookup值

左侧的表缺少分配给该成员ID的提供者。 DOS代表成员接受服务的服务日期。

右表是成员提供者的历史。例如,在日期范围1/1/2016(开始日期)至2/13/2016(结束日期)期间,将ID 1234分配给Bob。

左边的表格是成员收到服务的时候。例如,会员ID 1234于2016年2月7日有服务日期(DOS)。提供者Alan是我需要返回的内容,因为他是在该DOS期间分配给该成员(ID)的提供者。 Alan的开始日期:2/14/2016和结束日期:9/30/2016。因此,Alan应该在7/2/2016的DOS下作为提供者返回成员ID 1234。

我用Excel 2010工作

Reference

+0

在绿色部分列您提供哪些哪个需要成为一个公式?如果我理解正确,您提供Provider和ID,并且公式只返回DOS。同样在这个示例数据中,您拥有多个具有相同ID的提供程序,这是发生在真实数据中还是没有? –

+0

你能解释一下吗,你是如何检测跌倒的? – harun24hr

+0

我在文章和截图中都添加了更多细节和更清晰的解释。让我知道,如果这有助于澄清我在找什么。 –

回答

0

A2试试这个数组公式然后复制/粘贴一路下滑

=INDEX(F:F,MATCH(1,IF((H:H<=C2)*OR(I:I>=C2,ISBLANK(I:I))*(G:G=B2),1))) Ctrl+Shift+Enter 
+0

如果右边的表按照ID ASC,提供者开始日期ASC和提供者结束日期ASC进行排序,这是否仅适用?因为如果在这个例子中是这样的话,它似乎可行。我总是可以用这种方式对数据进行排序。 但是,如果我更改排序顺序,只是按提供者开始日期排序,以最新到最旧,它不能正常工作。它将bob分配给ID 1234. –

+0

不,它应该可以在数据顺序无关的情况下工作,前提是数据保持一致。您应该确保在排序时不更改数据(您是否单独对每列进行排序)?唯一要知道的是它返回第一个匹配,所以如果有多个记录匹配条件,结果可能会改变,但新的resullt也应该是正确的。 –