2024-02-01

[엑셀] "근무일수, 경과일, 월, 년" 계산하는 수식 작성 방법 - DATEDIF

[엑셀] "근무일수, 경과일, 월, 년" 계산하는 수식 작성 방법 - DATEDIF


안녕하세요.
행아아빠입니다.
이번 #엑셀 내용으로는
입사일로부터 현재까지 근무일수 또는 경과일, 경과월, 경과년도를 계산 하는 수식을 작성해 보려고 합니다.
근무일수나 현재일자를 기준 또는 특정날짜를 기준으로 경과일을 계산하는 수식에는 # DATEDIF 함수를 사용해서 작성 할 수 있겠습니다.
또한 근무일수 뿐만 아니라 태어난 날짜를 기준으로 날짜를 "00년 00월 00일"로 나이를 계산할 수도 있겠지요~~

■ 조건이 있는 날짜 기간의 합계를 계산하는 수식 작성 방법.


■ 엑셀 DATEDIF 함수로 근무일수 계산하는 방법.


▲ 수식을 작성하기 위해 간단하게 자료를 입력해 보았습니다.
   빨간 네모박스안에 근무일수와 00년 00개월 00일로 표기 되도록 수식을 작성해 보겠습니다.
   DATEDIF 함수의 수식 구문은
   =DATEDIF(기준일, 최종일, "Y")로 간단하게 작성 할 수 있습니다.
   여기서 Y는 연도를 표기하라는 의미이고, M(월) 또는 D(일)로 변경하여 원하는 표기 방법으로 바꿔서 사용해 주시면 됩니다.
   또는 YM(개월), MD(일)등으로 표기할 수 있는 방법도 있겠습니다.


▲ 우선 E열의 근무일수를 계산하는 수식을 작성해 보면,
  =DATEDIF(C2,D2,"D")이렇게 작성을 했을때 퇴사일이 공란일 경우에는 수식의 결과값이 에러값으로 반영되는 것을 볼 수 있는데,
   퇴사일이 공란으로, 비교할 값이 없기 때문에 오류값으로 반환되는것은 당연한 것입니다.
   그러면, 퇴사일이 공란일때는 아직 근무중이기 때문에 현재 날짜를 기준으로 근무일수를 계산해야하고,
   퇴사일이 있다면, 입사일부터 퇴사일까지의 근무일을 계산해 주면 되는 것이겠지요~


▲ 퇴사일이 공란이라면 =IF(D2="", 현재 날짜를 기준으로 입사일부터 현재날짜까지의 근무일수를 계산 DATEDIF(C2,TODAY(),"D"),
   그렇지 않고 퇴사일이 존재한다면 입사일부터 퇴사일까지의 근무일수를 계산 DATEDIF(C2,D2,"D"))
   이렇게 작성해야 오류값이 없는 수식이 완성 되는 것 입니다.
  =IF(D2="",DATEDIF(C2,TODAY(),"D"),DATEDIF(C2,D2,"D"))

■ F열의 근무경과년월일의 표기 방법을
    "00년 00개월 00일"로 표기하는 수식.


▲ F열에 작성된 수식의 결과값은
  "00년 00개월 00일"로 표기 됩니다.
  수식은 복잡하게 뭔가 많이 작성되어 있는것 같지만,
  근무일수를 작성한 수식에다가 약간의 살을 붙여주어 연결해 주었다고 생각하고 보시면,
  그리 어렵게 작성된 수식은 아님을 알 수 있을 거예요!!
  =IF(D2="",DATEDIF(C2,TODAY(),"Y")&"년"&DATEDIF(C2,TODAY(),"YM")&"개월"&DATEDIF(C2,TODAY(),"MD")&"일",
  DATEDIF(C2,D2,"Y")&"년"&DATEDIF(C2,D2,"YM")&"개월"&DATEDIF(C2,D2,"MD")&"일")
  DATEDIF 함수의 기본형식에 텍스트를 표기 하기 위해서 &"텍스트"&로 연결해준 형태와
  연도는 "Y"로, 개월은 "YM", 일수는 "MD"로 표기하였습니다.
  일자를 기준으로 경과된 년, 월, 일을 계산하는 함수 DATEDIF 어렵지 않죠~~??
  또한 DATEDIF 함수를 이용해서 입사일 대신에 생년월일을 입력하면 나이 계산도 어렵지 않게 계산 할 수 있으니 참고 하시기 바랍니다~

그럼 오늘 내용도 많은 분들께 도움되시길 바라며,
기분 좋은 하루 보내시길 바라겠습니다^^!!


댓글 없음:

댓글 쓰기