判断某一年是否为闰年,有很多种公式,可能有些读者还记得我之前分享过的一个解法:Excel函数(21)–用mod函数判断闰年。上述案例中的公式是对闰年定义的标准诠释,不过有些同学觉得公式略过复杂,希望分享一些更简单的方法。那就满足大家的心愿,一次教大家6个公式。案例:…
判断某一年是否为闰年,有很多种公式,可能有些读者还记得我之前分享过的一个解法:Excel函数(21)–用mod函数判断闰年。
上述案例中的公式是对闰年定义的标准诠释,不过有些同学觉得公式略过复杂,希望分享一些更简单的方法。
那就满足大家的心愿,一次教大家 6 个公式。
案例:
用不同的方式判断 A 列中的年份是否为闰年,效果如下图 2 所示。
解决方案 1:
1. 在 B2 单元格中输入以下公式 –> 下拉复制公式:
=IF(COUNT(–(A2&”-2-29″)),”是”,””)
公式释义:
(A2&”-2-29″):结果为“2010-2-29”,这是一个文本值
–(…):
“–”的作用是将文本转换为数值;
如果上述日期存在,则返该日期对应的数值;如果不存在,则返回错误值 #VALUE!
COUNT(…):
count 函数的作用是统计数值的个数;
如果日期存在,则 count 结果为 1;不存在的日期为错误值,count 对错误值的统计结果为 0
if(…,”是”,””):用 if 函数判断 count 函数结果,为 1 则返回“是”,反之留空
解决方案 2:
1. 在 C2 单元格中输入以下公式 –> 下拉复制公式:
=IF(ISNUMBER(–(A2&”-2-29″)),”是”,””)
公式释义:
本公式与前一个公式唯一的区别是将 count 替换成了 isnumber 函数;
isnumber 函数的作用是判断参数是否为数值,返回 true 或 false 的逻辑值,相当于 1 和 0,所以在公式中的作用与 count 一样
解决方案 3:
1. 在 D2 单元格中输入以下公式 –> 下拉复制公式:
=IF(MONTH(DATE(A2,2,29))=2,”是”,””)
公式释义:
DATE(A2,2,29):
用 date(年,月,日) 函数生成日期;
因为日期“2010/2/29”不存在,date 会自动延后一日,计算出正确的日期“2010/3/1”
MONTH(…)=2:用 month 函数判断上述日期中的月份是否为 2;
if(…,”是”,””):如果月份为 2 就表示是闰年,如果变成了 3 月,就不是闰年
解决方案 4:
1. 在 E2 单元格中输入以下公式 –> 下拉复制公式:
=IF(DAY(EOMONTH((A2&”-2-1″),0))=29,”是”,””)
公式释义:
EOMONTH((A2&”-2-1″),0):eomonth 的作用是计算出第一个参数值“2010-2-1”所在月的最后一天的日期
DAY(EOMONTH((A2&”-2-1″),0))=29:计算上述日期中的日是否为 29
if(…,”是”,””):如果是 29 就表示是闰年,否则就不是闰年
有关 eomonth 函数的详解,请参阅 Excel – 几千行日期,如何快速算出每个日期当月有几天?
解决方案 5:
1. 在 F2 单元格中输入以下公式 –> 下拉复制公式:
=IF(DAY(DATE(A2,3,0))=29,”是”,””)
公式释义:
该公式与解决方案 3 的公式非常接近,唯一区别是前一个公式用 month 函数判断月份是否为 2 月,而此处是用 day 函数判断日是否为 29。
解决方案 6:
1. 在 G2 单元格中输入以下公式 –> 下拉复制公式:
=IF((–A2&”-12-31″)-(–A2&”-1-1″)=365,”是”,””)
公式释义:
(–A2&”-12-31″)-(–A2&”-1-1″)=365:
分别生成当年的最后一天和第一天的日期,并用“–”将日期转化成数值;
将两个日期相减,如果差值为 365,说明总天数为 366,即闰年
最后通过 if 函数返回上述判断结果
很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。
现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至907991599@qq.com 举报,一经查实,本站立即删除。本文作者:小斋,如若转载,请注明出处:https://www.diehen.com/167681.html