掌握excel固定单元格技巧,让数据管理更高效
699
2022-12-01
在Excel中如何判断某年是否为闰年
如果要在Excel中确定某年是否为闰年,可以用下面的方法,假如指定的日期在A1单元格。
使用公式:
=IF(OR(MOD(YEAR(A1),400)=0,AND(MOD(YEAR(A1),4)=0,MOD(YEAR(A1),100)<>0)),"闰年","非闰年")
例如A1单元格为“1900-1-1”,公式返回“非闰年”。
还可以使用下面的公式,对于闰年公式返回“1”,非闰年返回“0”。
=(MOD(YEAR(A1),4)=0)-(MOD(YEAR(A1),100)=0)+(MOD(YEAR(A1),400)=0)
下面的公式比较简洁,除1900年外都能正确判断:
=IF(DAY(DATE(YEAR(A1),2,29))=29,"闰年","非闰年")
使用自定义函数:
按Alt+F11,打开VBA编辑器,单击菜单“插入→模块”,在右侧的代码窗口中输入下面的VBA代码:
Public Function IsLeapYear(ByVal Date1 As Date) As BooleanY = Year(Date1)IsLeapYear = Month(DateSerial(Y, 2, 29)) = 2End Function
或:
Function IsyLeapYear(ByVal Date1 As Date) As BooleanY = Year(Date1)IsyLeapYear = IIf(Y Mod 100 = 0, Y Mod 400 = 0, Y Mod 4 = 0)End Function
关闭VBA编辑器,在A1单元格中输入日期格式的数据,在另一单元格中输入:
=IsLeapYear(A1)
或:
=IsyLeapYear(A1)
对于闰年公式将返回“TRUE”,非闰年返回“FALSE”。
上述公式或自定义函数对1900年以前年份的判断也是正确的。如果只需要判断1900年以后的年份,还可以用下面的几个公式:
=IF(DAY(DATE(A1,3,0))=29,"闰年","非闰年")
=IF(MONTH(DATE(A1,2,29))=2,"闰年","非闰年")
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。