我原来的一位学生,刚接手人力资源管理工作,领导吩咐,为体现公司对职工的关怀,员工生日当天要送出祝福。这位学生想在员工人事表格中设置提醒,提示自己提前七天预定生日礼物,问有没有这样的公式?
我原来的一位学生,刚接手人力资源管理工作,领导吩咐,为体现公司对职工的关怀,员工生日当天要送出祝福。这位学生想在员工人事表格中设置提醒,提示自己提前七天预定生日礼物,问有没有这样的公式?
用以下样表述公式:
公式实现
在C2单元格输入公式:
=TEXT(7-DATEDIF(B2-7,TODAY(),”YD”),”0天后生日;;今天生日”)
确定并向下填充公式,可得所有员工的生日提醒。
如下图:
公式解析
首先解释一个疑惑:
DATEDIF函数用来忽略年份计算日期差的语法是:DATEDIF(起始日期,结束日期,“YD”),为什么此公式中DATEDIF的第一个参数数B2-7,而不是直接写出生日期B2?
用举例法更容易理解:
比如第一位员工的生日是2000/4/15,作为起始日期,忽略了年(因为生日无关年份,只关月日),日期是4月15日;而结束日期是今天2018/4/9,忽略了年,日期是4月9日。结束日期(4月9日)减掉起始日期(4月15日)是减不着的,所以像减法借位一样,会“借”一年当365天,所以返回值会是359。为了避免这个359的结果,所以人为把起始日期(4月15日)先减掉7天(因为是提前7天提醒),这样,公式中写成DATEDIF(B2-7,TODAY(),”YD”),这部分的返回值就是1,然后用7-1,就是还有6天过生日。
再使用TEXT函数规范结果的显示方式:大于0,显示为“还有几天”,小于0,显示为空,等于0会显示“今天生日”。