我有一个工作表,其中包含A和B列中的日期:
col A | col B |
2014-06-30 | 2014-10-31 |
2014-01-21 | 2014-05-31 |
2012-03-07 | 2014-11-03 |
2013-02-05 | 2014-05-01 |
在C栏中,我想检查指定月份的任何一天(即2014年6月)是否在A和B列的日期之间:
col A | col B | col C |
2014-06-30 | 2014-10-31 | yes |
2014-01-21 | 2014-05-31 | no |
2012-03-07 | 2014-11-03 | yes |
2013-02-05 | 2014-05-01 | no |
有什么想法吗? (VBA或Excel公式)
提前感谢您的帮助!
答案 0 :(得分:4)
如果该月的第一天晚于B,或者如果最后一天在A之前,那么只有不是重叠,所以此公式应该有效
=IF(OR(A2>DATE(2014,6,30),B2<DATE(2014,6,1)),"no","yes")
要缩短,您可以将参考期的开始日期和结束日期放在两个单元格中,例如E1
和F1
,然后使用此版本:
=IF(OR(A2>F$1,B2<E$1),"no","yes")
答案 1 :(得分:-1)
假设Excel知道列的第一个是日期;假设你把你的“指定月份”放在D栏中,这就是你可以比较的方法:
=IF(AND(D1>A1,D1<B1),"yes","no")
它必须比较另一个日期,例如,如果您想测试7月,您将参考7-1-2014的单元格
为了更具体,您可能希望使用VBA和date references进行检查。