엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

안녕하세요. 푸른별빛입니다.

지난번에 이어 엑셀 함수 중 날짜와 관련하여 유용한 함수인 DATEDIF 함수에 대해 알아볼게요.

예를 들어 이런 활용이 가능해요.

A라는 사람이 2019년 01월 04일에 입사를 했으면 오늘까지 근무한 날짜는?
나랑 여자친구랑 사귄지 오늘로 며칠이지? 기념일 챙겨야 되는데...

꼭 업무가 아니더라도 날짜 간의 차이 계산을 할 일은 수도 없이 많죠.

여기에 유용하게 사용할 수 있는 기능이 바로 DATEDIF 되겠습니다.

DATEDIF 함수는 연 단위, 월 단위, 날짜 단위 계산이 가능한데요.

함수 명령어는 아래처럼 하시면 되요.

=DATEDIF(B1,B2,"Y") (연도 차이 계산)

=DATEDIF(B1,B2,"M") (총 개월수 차이 계산)

=DATEDIF(B1,B2,"D") (총 일수 차이 계산)

=DATEDIF(B1,B2,"YM") (연도를 무시한 순수 개월수 차이)

=DATEDIF(B1,B2,"MD") (연도,월을 무시한 순수 일수 차이)

(B1, B2는 계산하고자 하는 날짜 2개)

=DATEDIF만 쓰고 나머지는 계산하려는 날짜와 보려는 값에 맞춰서 바꾸면 되겠죠?

아래에 표로 정리해 놓았습니다.

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

보시는 것처럼 연도차이, 개월 차이, 일수 차이를 확인하실 수 있어요.

특히 개월과 일수는 직접 계산하려면 시간이 좀 걸리는 편이니, 함수로 쓰시는 걸 권장해요.

그리고 연도를 배제한 개월 차이만 보는 방법, 연도와 월을 배재한 일수 차이만 보는 방법도 있어요.

보통은 위의 3가지만 쓰고 아래의 2개는 잘 쓰지는 않으니, 참고용으로만 봐 주세요.

주의하실 점은 이 함수를 쓰실 때 반드시 저 YMD 부분을 큰 따옴표 ""으로 열고 닫아주셔야 되요.

엑셀이 자동으로 수정을 해 주긴 하는데, 간혹 오류가 나는 경우가 있답니다.


오늘은 DATEDIF 함수의 활용에 대해 알아봤어요.

두 날짜의 차이를 계산하는 작업은 생각보다 유용한 경우가 많으니

이번 기회에 꼭 알고 가시길 바랄게요.

다음 시간에는 수학/삼각 관련 함수를 알려드릴게요.

사용법은 그리 어렵지 않고, 유용하게 사용할 경우들이 있으니

꼭 다음에도 봐주세요~~

엑셀 DAYS 함수는 전달되는 두 날짜 사이의 일수( days )를 결과로 반환한다. 비슷한 함수로 DAYS360 함수가 있다. 하지만 DAYS360 함수는 1년을 360일로 계산하고, DAYS 함수는 그대로의 일자 수로 계산한다.

DAYS360 함수가 불편하였다면 DAYS 함수를 사용해 보자. 단, 이 함수는 엑셀 2013 버전에 추가되어, 그 이후부터 사용가능하다.

엑셀 DAYS 함수 기본 설명

설명 : 종료일과 시작일 순으로 전달된 날짜 사이의 일수를 계산하고 반환한다.

구문 : DAYS( end_date, start_date )

인수 :

end_date : 종료일. 참조나 수식 반환된 날짜.

start_date : 시작일. 참조나 수식 반환된 날짜.

노트1 : 인수가 이렇게 전달되는 이유는 텍스트 표현으로 전달된 날짜 인수는 컴퓨터 날짜 시스템 및 해석 설정에 따라 다르게 해석될 수 있기 때문이다.

엑셀 DAYS 함수 사용 예제

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan
[그림1] 엑셀 DAYS 함수로 두 날짜 사이 날수 계산

참고1 : 위 그림의 DAYS360 함수식은 method 인수가 생략되어 FALSE( 미국식 )으로 계산된다.

사용 예제1 : =DAYS( G6, G5 )

사용 결과1 : 58

날짜가 입력된 두 셀, G6 와 G5 를 DAYS 함수의 end_date 와 start_date 인수로 사용하여 두 날짜의 간격( 일수 )을 얻는다.

2017-02-28 과 2017-01-01 사이의 일수, 1월은 31일, 2월은 28, 총 59일 이지만 간격이기에 1일이 빠지고 58 이 결과로 반환된다.

참고로, DAYS360 함수로 이 인수들 간격을 구했다면, 57 이 결과 반환된다. 이유는 DAYS360 은 1년을 360일로, 1달을 30일로 계산하기 때문이다. 1월은 30일로, 2월은 28일이 계산되어, 57 이 결과 반환된다.

두 함수의 차이를 잘 알고, 필요에 맞는 함수를 사용하자.

관련 함수 : [엑셀 모바일] 날짜 사이 일수 DAYS360 함수 배우기

사용 예제3 : =DAYS( DATE(2017, 12, 31), G8 )

사용 결과3 : 183

엑셀 DATE 함수가 반환하는 날짜, 2017-12-31 과 G8 셀의 2017-07-01 사이의 일수를 계산한다. 7월, 8월, 10월, 12월의 날수가 31일, 9월, 11월이 30일씩, 총 184 일이다. 역시, 간격이기에 1일이 빠져서, 183 이 결과 반환된다.

이 예제의 핵심은 첫번째 인수( end_date )가 DATE 인수로 날짜 전달되었다는 것. 만일, 이 인수가 "2017-12-31" 로 전달된다면 노트1의 이유로 잘못된 결과를 얻을 수도 있음을 기억하자.

관련 함수 : [엑셀 모바일] 날짜 생성 DATE 함수 배우기

사용 예제4 : =DAYS( TODAY(), G5 )

사용 결과4 : 194 ( 오늘 날짜에 따라 다른 결과 )

이번 DAYS 함수식에서는 엑셀 TODAY() 함수를 이용해서 오늘 날짜를 얻고, G5 셀의 2017-01-01 과의 간격 차이를 구한다. TODAY 함수는 인수가 없는 함수이고, 오늘 날짜를 반환한다. 이 함수식을 언제 실행하느냐에 따라 결과는 달라질 것이다.

오늘 날짜 2017년 7월 14일, 현재 이 함수식을 실행하면, 194 를 결과 반환하다. 2017년이 194일 지났다는 것....벌써.

관련 함수 : [엑셀 모바일] 오늘 날짜 반환 TODAY 함수 배우기

엑셀 DAYS 함수 주요 오류

DAYS 함수 사용 중 자주 발생하는 두 에러

- 전달된 end_date 와 start_date 인수가 하나 또는 둘 모두 숫자값이거나, 유효한 날짜가 아니라면 #NUM! 오류 발생.

- 전달된 end_date 와 start_date 인수가 하나 또는 둘 모두 날짜로 해석 불가능한 텍스트 값이라면 #VALUE! 오류 발생.

엑셀 2013 에 추가된 DAYS 함수는 두 날짜의 일수 차이를 구하는 함수이다.

여기서, 이런 의문이 생긴다. 왜 이미 존재하던 유사 함수 DAYS360 은 1달을 30일 기준으로 계산하는가? 이유는 DAYS360 함수가 회계 계산을 목적으로 생성되어 회계 일수 체계에 기준을 둔 함수이기 때문이다.

이번시간에는 엑셀에서 두 날짜 사이를 계산하는 방법을 알아본다. 엑셀로 업무나 과제를 하다보면 두 날짜간의 차이를 구해야하는 일이 종종 있다. 예를 들어 회사에서의 근무일수, 근무년수, 근무기간, 만나이, D-DAY, 연애기간, 결혼생활등 과거의 시작날짜와 오늘날짜의 차이를 구해야하는 경우가 있다. 예를 들어, 근무연수는 몇년 몇개월 몇일로 표시될 수 있다.

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

* 혹시 EXCEL 날짜 관련, 다른 꿀팁이 필요하다면 아래 포스팅도 참고해보시라.

▶ EXCEL 날짜에서 요일 추출 (요일 형식 변환 : ex. 월 / 월요일 / mon / monday)

▶ EXCEL 날짜에서 년월일 글자 표시, 년월일 한자 표시, 요일 표시

▶ EXCEL 날짜를 드래그해서 평일만 나오게 하는 방법 (채우기핸들)

▶ EXCEL 날짜에 "-" 표시 추가하기 (ex. 20200829 -> 2020-08-29 로)

▶ EXCEL 날짜 시간 더하기, 빼기 계산 방법

 

 

본론으로 와서 바로 결과 화면을 보도록 하자.

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

아마 위와 같은 결과화면을 원하셨을 것이다.

예를 들어, 2015-08-30일에 입사했을때의 총 근무기간을 년, 총 개월수, 총 일수로 표시하거나

년 + 개월 + 일로 표시해야하는 상황일 것이다.

 

이러한 상황을 날짜 관련 함수로 간단히 구분할 수 있는데, 엄청 간단하지는 않지만 그리 어렵지도 않다.

일단 이 두 날짜 차이를 계산하는 함수는 DATEDIF()가 되겠다.

하지만 함수 라이브러리에는 없기 때문에, 엑셀에서 입력할때 자동완성으로 뜨지 않으니

그냥 쭉 입력해서 명령을 내리면 된다.

 

먼저 DATEDIF()의 함수형식과 인수를 알아보고 예제로 설명해보겠다.

1) 함수형식

=DATEDIF(start_date, end_date, return_type)

=DATEDIF(시작날짜, 종료 날짜, 기간 종류)

 

 

2) 인수

- 시작 날짜, 종료 날짜는 말 그대로다

- return_type

1) "Y" : 두 날짜 사이에 경과한 총 연수

2) "M" : 두 날짜 사이에 경과한 총 월수

3) "D" : 두 날짜 사이에 경과한 총 일수

4) "YM" : 경과한 연도까지 뺀 나머지 경과 개월수

5) "YD" : 경과한 연도까지 뺀 나머지 경과 일 수

6) "MD" : 경과한 개월까지 뺀 나머지 경과 일 수

 

실제 사용된 함수를 보도록 하자.

=DATEDIF(D5,TODAY(),"Y")&"년"

- D5 : 입사일

- TODAY() : 오늘 날짜 (2020-08-30)

- "Y" : 입사일 - 오늘 날짜의 총 연수

- & : "년"이라는 글자와 합치기 위한 기호

 

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

위까지 이해하셨다면, 이제 Y, M, D 관련 함수만 이해하시면 된다.

 

함수 인자로 들어가는 Y, M, D는 말그대로 두 날짜간의 총 기간이다.

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

하지만 12개월은 1년 단위로, 31일은 1달로, 365일은 1년으로 환산될 수 있기 때문에

직관적으로 이해하기가 쉽지 않다.

 

 

따라서 총 년수, 총 개월, 총일수는 환산되지 않는 년, 개월, 일로 구분하는 것이 훨씬 보기 좋다.

이때는 4~6번의 YM, YD, MD를 인수로 사용해야 한다.

하지만 DATEDIF 함수를 2~3개정도를 묶어 사용해야 한다.

 

- YM은 년도를 무시하고 개월만 계산 (최대 11개월까지 표시)

- YD는 년도를 무시하고 일수만 계산 (최대 364일까지 표시)

- YM은 년도, 개월까지 무시하고 일수만 계산 (최대 28~31일까지 표시)

 

굳이 외우실 필요는 없다.

아래 예제를 보고, 적절히 활용하시면 된다.

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

실제 사용된 함수는 아래와 같으니, 참고해보시기 바란다.

(함수를 서로 합치는 기호는 &, 띄어쓰기는 " "가 사용됐음)

 

* 아 참고로 필자는 현직 엔지니어로, 10년 이상의 PC 노하우를 블로그, 유튜브로 올리고 있다.

PC 관련 문의를 100% 무료로 도와드리니까, 아래 SNS를 활용해보시기 바란다.

▶ PC 고장 문의 게시판

▶ PC 꿀팁 카페 (네이버)

▶ 유튜브 <PC 꿀팁 받기>

 

▶ 유튜브 <컴맹 탈출 강좌>

 

 

 

1) 엑셀 ~년 ~개월 함수

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

 

2) 엑셀 ~년 ~일 함수

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

3) 엑셀 ~년 ~개월 ~일 함수

엑셀 두 날짜 차이 계산 - egsel du naljja chai gyesan

 

공유하기

게시글 관리

구독하기현직 엔지니어의 PC 꿀팁 연구소 (즐겨찾기 : CTRL+D)

'Software 사용 꿀팁 > EXCEL 2007~2019, 365' 카테고리의 다른 글

[엑셀 단축키 모음표 총정리] 엑셀 최신버전 모든 단축키 모음집  (0)2020.08.30[엑셀 결재란 만들기 넣는법] 결재 양식 그림, 결재판 크기 조절 (엑셀 결제란 삽입)  (2)2020.08.30[엑셀 시간 시분초 추출 함수] 엑셀 시간에서 시분초 구분 함수 (초간단 1초컷)  (0)2020.08.30[엑셀 날짜 년월일 추출] 엑셀 년도만 추출, 월일만 추출 (요일 계산, 평일만) YEAR, MONTH, DAY  (0)2020.08.29[adobe flash player이(가) 차단됨, 해결방법] 이 페이지에서 Flash가 차단되었습니다 (플러그 인 차단됨), 세금계산서 안열릴때  (0)2020.08.29

엑셀 몇년 몇개월?

이런 계산을 할 때는 datedif 함수 도움이 필요합니다. 이 함수는 기본적으로 이렇게 씁니다. 여기서 표시 속성에는 △y(연도) △m(개월) △d(일자) △ym(연도를 계산하고 남은 개월) △yd(몇년을 계산하고 남은 일자) △md(개월을 계산하고 남은 일자) 등 6가지가 있습니다.

엑셀 몇년차 계산?

전체 근속년수, 전체 근속개월수, 전체 근속일수 계산은 아래 수식을 사용하였다..
전체 근속년수 = DATEDIF(입사일자, 퇴사일자, "Y").
전체 근속개월수 = DATEDIF(입사일자, 퇴사일자, "M").
전체 근속일수 = DATEDIF(입사일자, 퇴사일자, "D").

몇주 계산?

몇 주차인지 세는 기준은 뭔가요? 몇 주차인지 세는 기준은 국제기준이 있습니다. 날짜와 시간에 대한 국제 표준 ISO-8601이 있는데요. 이에 따르면 매 주의 시작일은 월요일이며, 매월의 첫 주는 과반수(4일 이상)가 포함된 주를 기준으로 합니다.