分享

​生日提醒,其实很简单

 贵佬 2018-05-24

在提到日期计算时,几乎所有的Excel图书中都会提到一个隐藏函数——DATEDIF。

这个函数的确挺好用,但令人奇怪的是,这居然是个隐藏函数,你甚至在Excel的帮助信息里也找不到它。

这个函数是用来计算两个日期之间的间隔时间的,它的用法是:

DATEDIF(开始日期,结束日期,返回类型)


第三参数有Y、M、D、YM、YD、MD六种,返回的内容大致如下图所示。

特别注意,第二个参数的日期必须大于第一个参数的日期。

也就是结束日期要大于开始日期的,否则的话,Excel就晕了。


举个例子吧:

开始日期是2011年3月3日,结束日期是2014年5月15日,下面这张表显示了各个参数的不同意义:

好了,根据这个函数的特性,我们就可以设置员工生日提醒了。


假如你们公司在员工生日当天会送礼物啥的,你得提前去购买。因此你希望在员工信息表里能设置一个提醒,这时你就可以借助这个函数来处理。

所谓生日,必须包含月和日,而包含月和日的第三参数只有“yd”,因此,这里就是用这家伙。

但是可不可以用下面的公式来计算两个日期之间的间隔呢?

=DATEDIF(出生日期,TODAY(),'yd')


比如今天5月24日,员工出生日期是1980年5月29日,用上面这个公式返回结果是360天。

对于这种情况,可以做个小小的处理,假设我们希望提前10天提醒,就这么处理:“出生日期”-10。

公式为:

=DATEDIF(出生日期-10,TODAY(),'yd')

该公式返回的结果是2,也就是说这两个日期实际差了10-2=8天。只要用10减去DATEDIF的计算结果就可以了:

=10-DATEDIF(出生日期-10,TODAY(),'yd')


好了,现在可以来设置提醒了。

下面是模拟的员工档案表,D4单元格的公式为:

=TEXT(10-DATEDIF(C4-10,TODAY(),'yd'),'还有0天生日;;今天生日')

咱们以前学习过TEXT函数的用法,这里把DATEDIF函数的计算结果作为TEXT函数的参数。

'还有0天生日;;今天生日'的意思是:

DATEDIF函数的计算结果大于0的,显示为“还有N天生日”;

小于0的不显示;

等于0的显示为“今天生日”。


提示:

由于DATEDIF函数第二参数在使用“YD”时有特殊的计算规则,因此当结束日期是3月份时,计算结果可能会出现一天的误差,需要注意判断一下。


好啦,今天的内容就是这些,光说不练假把式,有空要动手试一下哦。

祝所有5、6月份过生日的表亲们快乐~



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多