엑셀 Excel 날짜 및 일수 계산하기, DATEDIF 함수를 이용해서 기간 구하기

 

환경 : Microsoft Excel 2010

 

엑셀에서 특정 날짜의 간격(일수) 를 계산하는 가장 간단한 방법은 사칙연산을 이용하는 것입니다. 하지만 좀더 정확하게 계산하려면 함수를 이용하는 것이 좋습니다. 그 함수가 바로 DATEDIF 입니다. 보통 D-DAY 나 남은 기간을 알아낼 때 많이 이용합니다. 아래 샘플은 현재 날짜와 책 반납일을 비교해서 얼마나 남았는지 계산하는 방법입니다.

 

▼ 도서관에서 책을 관리하는 사서라면 아래와 같은 작성할수 있을 겁니다. 책 빌려간 사람들의 반납일과 현재 날짜를 비교해서 남은 일수를 계산하는 것이죠. 

엑셀 Excel 날짜 및 일수 계산하기, DATEDIF 함수를 이용해서 기간 구하기

 

▼ 여기에서 현재 날짜는 문서를 열때마다 바뀌어야 하므로 TODAY() 함수를 사용 했습니다. 현재날짜와 책 반납일을 이용해서 남은 일수를 계산하기 위한 함수는 DATEDIF() 입니다. 인수는 3가지입니다. 첫 번째와 두 번째는 비교할 날짜를 넣어야 합니다. 세 번째 인수가 중요한데 출력할 형태를 결정짓는 값을 넘겨야 합니다. 종류는 다음과 같습니다. 

 

“y” : 년도의 차이값을 리턴합니다.

“m” : 차이만큼의 개월수를 리턴합니다.

“ym” : 년도를 뺀 나머지 개월수 입니다. 13개월이면 1년을 뺀 1개월만 나옵니다.

“d” : 경과 일 수를 리턴합니다.

“md” : 개월수를 뺀 나머지 일수 입니다. 40일이면 월값은 빼고 10일만 나오게 되죠.


그런데 그림처럼 에러가 나는 군요. 뭐가 문제일까요? 첫 번째 인수는 시작일이고 두 번째에 종료일이 들어가야 합니다. 그러니까 빠른 날짜가 앞에 와야겠죠. 

엑셀 Excel 날짜 및 일수 계산하기, DATEDIF 함수를 이용해서 기간 구하기


 아래 샘플은 남은 일수를 구하기 위해 3번째 인수로 “d” 를 넘겼습니다. 만약 경과 일수가 많아서 개월수와 같이 표한하고 싶다면 “md” 를 넘겨야 겠죠.

엑셀 Excel 날짜 및 일수 계산하기, DATEDIF 함수를 이용해서 기간 구하기


▼ 그런데 30일이 넘어가면 "월"과 "일"을 나누어서 표현하는 것이 알아보기 쉽겠죠. 이렇게 개월과 일을 표현할 때 일은 개월수를 뺀 나머지 일수로 해야 하므로 “md” 를 출력 유형값으로 넘겨야 합니다. 나머지 숫자를 제외한 텍스트는 "&" 특수 기호를 사용해서 조합합니다. 

엑셀 Excel 날짜 및 일수 계산하기, DATEDIF 함수를 이용해서 기간 구하기

저작자 표시 비영리 변경 금지
신고
Posted by 녹두장군