본문 바로가기
엑셀/엑셀 함수

나이와 근속기간 구하는 방법_YEAR / TODAY / DATEDIF

by Mensch 2023. 10. 5.
반응형

이번 포스팅에서는 나이와 근속기간을 구하는 방법에 대해 알아보겠습니다. 실제 인사팀의 경우, 근속기간을 구해야 하는 경우가 아주 많기 때문에 반드시 알아두시는 것이 좋습니다. 인사팀이 아니더라도 본인의 근속기간을 계산할 수 있고 이직 등의 근무기간 산정에서도 사용할 수 있기에 알고 있는 것이 좋습니다.

 

 

나이 구하는 방법_YEAR / TODAY함수

날짜는 숫자로 인식되기에 계산이 가능합니다. 오늘 날짜를 찾는 TODAY함수와 특정날짜의 연도를 추출하는 YEAR함수를 사용하여 나이를 계산하도로 하겠습니다.

예를 들어, F2에 나이를 구하고자 한다면 아래와 같이 입력합니다.

'=YEAR(TODAY())-YEAR(E2)'

나이구하는함수_YEAR_TODAY함수
YEAR_TODAY을 활용하여 나이를 구할 수 있습니다

  • TODAY()는 오늘 날짜
  • YEAR(TODAY())는 오늘 날짜에서 연도만 추출 (점) YEAR(E2) E2에 입력된 연도

즉, 당해연도에서 E2에 입력된 연도를 빼서 나이 '33'을 구했습니다. (최근까지 한국식 나이가 있었기에 함수에 +1을 해야 했습니다. '=YEAR(TODAY())-YEAR(E2)+1') 만약 결과값이 숫자가 아닌 날짜 등으로 표시가 된다면 [셀 서식](Ctrl + 1)의 '표시 형식'에서 '일반' or '숫자'로 변경해야 합니다.

 

 

근속기간 구하는 방법_DATEDIF

DATEDIF함수는 두 날짜의 차이를 연도, 월, 일로 계산하는 함수입니다. 이를 통해 퇴직자는 근속연수(기간)를 재직자는 현재까지의 근속연수(기간)을 구할 수 있습니다.


DATEDIF함수의 구성과 활용

'=DATEDIF(시작일, 종료일, 형식)'

  • 시작일, 종료일은 셀 주소이며, 오늘 날짜를 기준으로 하려면 TODAY함수를 입력
  • 형식은 두 날짜의 차이를 '연', '월', '일'로 표시
    - "Y" 전체 연도 수
    - "M" 전체 개월 수
    - "D" 전체 일자 수
    - "MD" 연, 월의 차이를 제외한 남은 일수만 표시
    - "YM" 연도의 차이를 제외한 남은 개월 수만 표시
    - "YD" 연도의 차이를 제외한 남은 일수만 표시
  • 예를 들어, 기준일이 '2015-07-08'일이고 오늘이 2023-09-18일 경우, 형식을 "D"로 지정하면 2994, "MD"로 지정하면 10의 결과값이 구해집니다.

 

이 함수로 근속기간을 구할 때 아래와 같이 2가지 경우가 있을 수 있습니다.

1. 오늘까지 근속기간을 계산하는 방법

'=DATEDIF(E2, TODAY(), "Y")'을 입력합니다.

근속기간_근속연수_DATEDIF함수
DATEDIF함수를 사용하여 근속기간을 구할 수 있습니다

  • E2는 시작일로 입사일을 의미
  • TODAY()는 종료일로 오늘 날짜를 의미
  • "Y"는 전체 연도 수
  • DATEDIF함수는 함수마법사에 등록되어 있지 않기 때문에 함수명을 직접 입력해야 합니다.

G2셀에 근속연수 '8'이 구해졌습니다.

 

2. 퇴사일까지 근속기간을 계산하는 방법

'=IFERROR(DATEDIF(E2, F2, "Y"), "재직")'

IFERROR_DATEDIF함수
IFERROR함수를 사용하여 에러를 '재직'으로 변경하였습니다

  • E2는 시작일, F2는 종료일, "Y"는 전체 연도 수 입니다.
  • 현재 재직 중인 구성원(김종국, 크러쉬, 에스파)이 있기에 DATEDIF함수만 사용하면 값없음(#VALEU!) 오류가 표시됩니다. 따라서, IFERROR함수를 사용하여 오류가 나타난 셀의 값을 '재직'으로 변경해 주었습니다.

 

 

3. 사용 시 주의사항

기준일이 '2015-07-08'일이고 오늘이 2023-09-18일 경우, 네이버 날짜 계산에서 일수를 구하면 2995가 구해집니다.

DATEDIF함수주의사항
네이버 날짜와 1의 차이가 발생하기에 함수 뒤에 +1을 추가합니다

하지만, 함수(=DATEDIF(E2, TODAY(), "D"))를 사용하면 2994의 결과값이 구해져 '1'의 차이가 발생합니다. 이는 엑셀 프로그램이 날짜 차이를 숫자로 계산하여 오늘 날짜를 제외하기 때문에 발생하는 것으로 오늘 날짜를 포함하려면 +1을 추가해야 합니다.(=DATEDIF(E2, TODAY(), "D")+1)

 

이상 나이와 근속기간을 구하는 함수 YEAR/TODAY/DATEDIF에 대해 알아보았습니다.

감사합니다.

반응형

댓글