date范围内的查找值

我有列表中的服务器(A),开始date(B),结束date(C)和项目名称(D)在该列顺序。

我想在另一个工作表中input服务器名称,并返回当前date内的项目名称。 服务器可能在列表中有多个条目。

任何人都可以帮忙配方吗?

谢谢。

假设你有一个Sheet1像这样:

在这里输入图像说明

和另一个表单如下:

在这里输入图像说明

那么C2中的公式可能是

{=INDEX(Sheet1!$D$1:$D$10000,MIN(IF((Sheet1!$A$1:$A$10000=A2)*(Sheet1!$B$1:$B$10000<=B2)*(Sheet1!$C$1:$C$10000>=B2),ROW(Sheet1!$D$1:$D$10000),1024^2+1)))}

这是一个数组公式。 input到没有大括号的单元格中,然后按[Ctrl] + [Shift] + [Enter]键完成。

该公式将采用服务器上的第一个项目,其中给定date落入开始date和结束date之间的date范围内。

如果没有,则会返回#REF错误。

这是德国的Excel。 date格式是TT.MM.JJJJ(DD.MM.YYYY)。 但它也可以与其他date格式一起使用。 唯一的要求是,date必须是date值,而不是string。

有了这样的数据:

在这里输入图像说明

我们把服务器的名称放在Sheet2的单元格A1 (比如server2),并在Sheet1中添加一个“帮手”列…所以在E2中插入:

 =IF(AND(B2<=TODAY(),C2>=TODAY(),A2=Sheet2!$A$1),1+MAX($E$1:E1),"") 

并抄下来:

在这里输入图像说明

“帮手”列find“好”的行。
最后在Sheet2单元格A2插入:

 =INDEX(Sheet1!D2:D24,MATCH(1,Sheet1!E2:E24,0)) 

从第一个“好”行中检索数据。