确定日期范围内的事件

时间:2014-11-28 16:01:14

标签: excel

我想知道如果日期在指定的范围列表中,Excel中是否可以从单独的列中选择信息。

我有一个日期列表和另一个我要检查的日期范围列表。我已经知道如何用“是”或“否”标记我的日期,但如果结果是“是”,是否可以获取其他信息。

例如。 A列是我要检查的日期列表

A    
01/01/14
20/01/14
05/02/14
09/03/14
08/05/14
10/05/14 

然后我有一个与各种事件相关的日期范围列表

B              C          D
Start data    End date   reason
24/12/13      02/01/14   Christmas
20/01/14      20/01/14   Fred Birthday
01/03/14      14/03/14   Holiday
10/05/14      10/05/14   Anniversary

使用公式

=IF(AND(A2>=MIN(B1:C6),A2<=MAX(B1:C6)),"yes","no")

可以告诉我,我在A栏中的每个日期是否属于任何日期范围,但是我希望,从D栏返回与日期匹配相关的原因代码。 所以结果看起来像这样:

A            B
01/01/14     Christmas
20/01/14     Fred Birthday
05/02/14     
09/03/14     Holiday
08/05/14
10/05/14     Anniversary 

我希望在不使用VBA的情况下可以实现这一目标吗?

由于

1 个答案:

答案 0 :(得分:0)

执行此操作的一种非常愚蠢的方法是使用IF语句中的else子句。基本思路是针对A中的每个字段,检查每个B和C,如果匹配,则返回D,否则继续。

E.g。

 A             B              C          D
01/01/14    24/12/13      02/01/14   Christmas 
            20/01/14      20/01/14   Fred Birthday
            01/03/14      14/03/14   Holiday
            10/05/14      10/05/14   Anniversary

=IF(AND(A1>=B1,A1<=C1),D1,
    IF(AND(A1>=B2,A1<=C2),D2, 
      IF(AND(A1>=B3,A1<=C3),D3
         ...so on
      )
    )
  )

以上将返回圣诞节。这些缩进只是为了更好地理解......