自己用的公式不对,没有离职时间在职的,算出的司龄年月日中间有些有-,有些没有-,怎么改。有离职时间的上面需要显示司龄,没有显示,哪位大神,帮我想想怎么编写公式补充提问追加悬赏求助学长
大概思路分两步走:
用函数DATEDIF分别计算两个日期间的相差的整年数、整月数、整天数
DATEDIF函数是一个隐藏函数
语法DATEDIF(start_date,end_date,unit)
start_date表示的是起始时间。
end_date表示的是结束时间。
unit表示的是返回的时间代码,是天、月、年等
注意:结束日期必须大于起始日期
unit参数含义如下:
Y" 时间段中的整年数。
M" 时间段中的整月数。
D" 时间段中的天数。
MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
YM" start_date 与 end_date 日期中月数的差。忽略日期中的日 和年。
YD" start_date 与 end_date 日期中天数的差。忽略日期中的年
2. 起始时间是给定的,用if函数判断状态是离职还是在职,离职状态的结束时间也是给定的,在职的结束时间是today
根据I列“离职”这个栏位是否有时间,如果有时间说明是离职状态,返回离职时间,否则为在职状态,返回today,判断状态函数: IF(I3<>"",I3,TODAY())
最终公式如下:
=DATEDIF(G3,IF(I3<>"",I3,TODAY()),"y")&"年"&DATEDIF(G3,IF(I3<>"",I3,TODAY()),"ym")&"月"&DATEDIF(G3,IF(I3<>"",I3,TODAY()),"md")&"日"
效果如图:
追问亲,能否帮我看下,我另外发的帖子