엑셀 텍스트(연속숫자)를 날짜형식으로 변환방법에 대해 살펴보자. 텍스트를 날짜형식으로 변환하는 방법으로 텍스트나누기와 MID함수를 중심으로 비교하여 설명한다.
연속숫자인 텍스트(Ex. 20140324)를 날짜형식(2014-03-24)으로 변환하는 주변서식과 셀 서식을 통일되게 양식을 맞추려는 의도도 있지만 주된 이유는 날짜형식 변환 후 날짜함수 또는 시간함수에서 원하는 결과를 얻기 위함이다.
날짜함수를 사용하며 많이 오해하는 부분이 셀 값이 20140324 인 경우 셀서식 사용자지정에서 yyyy-mm-dd 로 지정한다면 올바른 결과를 얻을 수 있을까. 결론은 그렇지 않다. 단지 날짜형식으로 보여줄 뿐 실제 데이타는 텍스트로 남아있기 때문이다.
결국 날짜함수(YEAR, MONTH, DAY) , 시간함수(HOUR, MINUTE, SECOND) 또는 기타 DAYS360, NOW, TIME 등에서 정확한 결과값을 도출하기 위해선 텍스트(연속숫자)를 날짜형식으로 바꿔야 하는데 텍스트나누기와 MID함수 등 여러가지 방법으로 가능하다.
굳이 텍스트나누기와 MID함수를 비교하며 설명하는 이유는 텍스트나누기는 해당 셀 값이 날짜형식으로 고정 변환하여 사용할 경우, MID함수는 텍스트(연속숫자)는 그대로 두고 셀 수식을 적용하고 싶을 때 사례를 설명하기 위함이다.
① 텍스트나누기로 날짜서식 지정하기(D열)
- 날자형식으로 바꿀 텍스트 또는 연속숫자 셀을 선택
- 데이터 -> 텍스트나누기 -> 텍스트마법사 ③단계 "날짜" 선택
날짜형식으로 변환 참 쉽죠. 한가지 잊지말야한 점은 텍스트 셀 값이 날짜형식으로 고정되어 이전의 텍스트를 재사용할 수 없게 된다는 점이다.
② MID함수로 날짜서식 지정하기(F열)
MID함수는 지정된 위치에서 시작하여 특정 개수의 문자를 텍스트 문자열에서 반환한다.
수식 구문 MID(text, start_num, num_chars)으로 "아름다운 하늘" 텍스트를 예로 들어 =MID(A2,1,4)는 첫 번째 문자에서 시작하여 4자를 표시하여 "아름다운"이란 결과를 얻게된다.
동일한 방식으로 텍스트(연속숫자)를 선택하고 =MID($C3,1,4)&"-"&MID($C3,5,2)&"-"&MID($C3,7,2) 구문을 적용하면 C3(20130716) => F3(2013-07-16) 셀값이 날짜형식으로 변환된다. 이때 문자열합치기 기호는 "&"로 YYYY-MM-DD 날짜형식으로 변환하기 위해 &"-"&로 문자를 합쳤다.
③ DAYS360 - 1년을 360일로 하여, 두 날짜 사이의 날짜 수를 계산한다.
DAYS360(start_date,end_date,[method]) 구문으로 엑셀예제에선 =DAYS360(D3,TODAY())으로 시작일, 종료일(오늘) 두 날짜 수를 계산하여 텍스트나누기와 MID함수로 변환된 날짜형식이 올바른지 확인했다.
엑셀예제파일-엑셀 텍스트(연속숫자) 날짜형식 변환.xls