A1列为入职日(空的表示往月入职人员),A2列为离职日(空的表示目前还在职),如何用公式计算当月在职天数?感谢解答
亲们的好像都不对,其中离职日当天已经不算在职了,各位再帮忙想想哈
1、表格中记录了员工的入职日期和离职日期,需要计算出员工的在职天数。
2、首先在E2单元格中,输入函数公式:=ROUND(IF(D2<>"",D2-C2,NOW()-C2),0)。
3、按“ENTER”键,即可得出第一位员工的在职天数。
4、选中E2单元格,拖动右下角的填充柄。
5、即可得出所有员工的在职天数。
亲,公式如下:
=DATEDIF(IF(A1="",DATE(YEAR(TODAY()),MONTH(TODAY()),0),DATE(YEAR(TODAY()),MONTH(TODAY()),A1)),IF(B1="",TODAY(),DATE(YEAR(TODAY()),MONTH(TODAY()),B1)),"D")
追答
收到,更改如下:
=DATEDIF(IF(A1="",DATE(YEAR(TODAY()),MONTH(TODAY()),1),DATE(YEAR(TODAY()),MONTH(TODAY()),A1)),IF(B1="",TODAY(),DATE(YEAR(TODAY()),MONTH(TODAY()),B1))-1,"D")+1
这位亲,好像还不行
C1的公式如下,下拉:
=DATEDIF(IF(A1<DATE(YEAR(TODAY()),MONTH(TODAY()),1),DATE(YEAR(TODAY()),MONTH(TODAY()),1),A1),IF(B1="",DATE(YEAR(TODAY()),MONTH(TODAY())+1,1),B1),"D")
这位亲,非常感谢解答,公式应该没有问题,行2和行5的情况,能否再改下显示成0?谢谢~
好的。
=IFERROR(DATEDIF(IF(A1<DATE(YEAR(TODAY()),MONTH(TODAY()),1),DATE(YEAR(TODAY()),MONTH(TODAY()),1),A1),IF(B1="",DATE(YEAR(TODAY()),MONTH(TODAY())+1,1),B1),"D"),0)
感谢!示例当月表示12月
C1公式如下
=IF((B1="")+(B1>EOMONTH(TODAY(),0)),DAY(EOMONTH(TODAY(),0)),DAY(B1)-1)-IF(A1>=EOMONTH(TODAY(),-1)+1,DAY(A1)-1)
这位亲,上图中标黄在职天数在2015年1月看来还有问题。。。
1、你的问题停留20天了,你要表达的意思并不清楚,需要大家慢慢去理解,时间长了,也已经淡忘了题目的意思,而且时间久后,解题的思路都模糊了。
2、2015年1月看图片中并没问题。
C2结果为24,12-25离职,当天不算,当然是24天了。
C3、C6为0,1-1离职,当天不算,那1月在职天数当然为0了。
C7为29,1-2至1-31,共30天,1-31当天不算,当然是29天了。