我在Excel中做了一些工作,需要比较两个日期列。我理解= IF(date1> date2,“Y”,“N”)函数,但理想情况下,只有当日期出现在不同的月份时,我才希望函数返回yes。
例如,date1 = 03/01/2017和date2 = 03/27/2017将返回N,因为同月,同一年。但是如果date1 = 03/05/2017和date2 = 04/02/2017,它会返回Y,因为不同的日期是不同的月份。
所以我不是在寻找日期之间30天的差异,我真的在寻找月份不同的数字。
是否有一种简单的方法可以做到这一点,这将是至高无上的。我确信它可能需要VBA中的宏,但是谁知道呢? Excel的稳健性和可用性让我不断惊叹。
答案 0 :(得分:3)
Excel有一些有用的功能可以将日期分解为各自的组件。在这种情况下,您将要使用Month()和Year()函数;分别返回月份和日期年份。
此公式检查月份和年份是否排成一列,如果他们这样做则给出Y,如果他们不这样做则给出N:
=IF(AND(MONTH(date1)=MONTH(date2),YEAR(date1)=YEAR(date2)),"Y","N")
如果您要查找月数差异,可以修改上面的公式,如下所示:
=IF(AND(MONTH(date1)=MONTH(date2),YEAR(date1)=YEAR(date2)),0,Month(date1)-Month(date2)+(12*(year(date1)-year(date2)))
希望这有帮助
答案 1 :(得分:1)