excel计算工龄公式问题

2024-11-15 16:42:36
推荐回答(5个)
回答1:

你的公式是很精炼,但因为Excel的日期实际是到某一天的,所以虽然看到的是“1983-3”实际具体哪一日并不一定,可能是31日,也可能是1日。还有两日期相减,结果是一个数值,但用日期表达出来是“1901-1-1”日后的某1天。Excel中数值和日期存储的结果是一样的,只是表达方式区别而已。
所以还是换个函数吧:
=IF(MONTH(C3)>=MONTH(B3),(YEAR(C3)-YEAR(B3))&"年"&(MONTH(C3)-MONTH(B3))&"个月",(YEAR(C3)-YEAR(B3)-1)&"年"&(MONTH(C3)-MONTH(B3)+12)&"个月")

回答2:

=DATEDIF(B3,C3,"y")&"年"&DATEDIF(B3,C3,"ym")&"个月"

回答3:

B3 参加工作时间,C3结束时间,结果设为数字格式
=DATEDIF(B3,C3,"y") '周年

=DATEDIF(B3,C3,"m")/12 '年

回答4:

=YEAR(NOW())-YEAR(B2)-IF(DATE(YEAR(B2),MONTH(NOW()),DAY(NOW()))<=B2,1,0)
对于日期格式的计算,Excel默认计算结果也保存为日期格式,如果你想让其显示成数值,你可以这样处理一下。
=CONCATENATE("",原公式)

回答5:

=IF(MONTH(C14)-MONTH(B14)=0,TEXT(YEAR(C14)-YEAR(B14),"G/通用格式")&"年",TEXT(YEAR(C14)-YEAR(B14),"G/通用格式")&"年"&TEXT(MONTH(C14)-MONTH(B14),"G/通用格式")&"个月")