使用Excel的函数判断某年是否为闰年?这个函数怎么写?

如题所述

现在的公历是根据罗马人的“儒略历”改编而得。由于当时没有了解到每年要多算出0.0078天的问题,从公元前46年,到16世纪,一共累计多出了10天。为此,当时的教皇格雷果里十三世,将1582年10月5日人为规定为10月15日。并开始了新闰年规定。即规定公历年份是整百数的,必须是400的倍数才是闰年,不是400的倍数的就是平年。比如,1700年、1800年和1900年为平年,2000年为闰年。此后,平均每年长度为365.2425天,约4年出现1天的偏差。按照每四年一个闰年计算,平均每年就要多算出0.0078天,经过四百年就会多出大约3天来,因此,每四百年中要减少三个闰年。
闰年的计算,归结起来就是通常说的:四年一闰;百年不闰,四百年再闰。
http://baike.baidu.com/view/29649.htm

在Excel中判断某年是否是闰年,是一个很有趣的问题。
若年号放在A1里,在B1写下面的公式:

=IF((MOD(A1,4))+NOT(MOD(A1,100))*MOD(A1,400),"平年",“闰年“)

再精简一下:

=IF(MOD(A1,4)+(INT(A1%)=A1%)*MOD(A1%,4),"平年","闰年")

我这段公式的特点,简洁,高效。省掉了 ...=0,...<>0 。直接利用MOD()函数的结果:为0则FALSE,非0则TRUE。

参考资料:谢谢 qinqh_yl

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-07-09
假设出身日期在A2单元格(必须确定A2单元格输入的是正确的日期格式)
在B2单元格输入公式
=if(or(mod(year(a2),400)=0,and(mod(year(a2),4)=0,mod(year(a2),100)<>0)),"是","否")
相似回答