본문 바로가기
엑셀/함수

TEXT함수로 날짜표시형식 바꾸기(with DATE,MID,FIND 함수)

by 자유개척가 2023. 12. 25.
반응형

안녕하세요

 

오늘은 제가 실제 회사에서 일하면서 사용했던 TEXT함수에 대해 알려드리겠습니다.

 

저의 업무 중에 날짜를 20230701 이런 식으로 타이핑해야 하는 일이 있는데요. 그런데 실제 받아보는 자료는 23.7/1 이런 식으로 표기가 되어 일일이 타이핑해야 하는 상황이 있었습니다. 한 두 개는 가능하지만 수십 개가 있을 때는 여간 귀찮은 게 아니더군요. 그래서 함수를 활용해 한번에 형식을 바꿨습니다.

 

제가 사용한 함수는 TEXT, DATE, MID, FIND 함수입니다. 함수가 여러개 많이 쓰였지만 생각만큼 많이 복잡하진 않습니다. 그럼 함수에 대한 기본 설명부터 드리고 어떻게 중첩해서 사용하는지 알려드리겠습니다.

 

우선 DATE,MID,FIND 함수를 활용해 날짜형식으로 추출하고 TEXT함수를 활용해 최종 원하는 형식으로 바꿔보겠습니다.

 

DATE함수에 대한 개념은 이전에 포스팅했던 글을 참고해 주시면 됩니다.

2021.01.09 - [엑셀/함수] - 엑셀 date 함수 사용법

 

엑셀 date 함수 사용법

안녕하세요. 오늘은 엑셀 date 함수에 대해 알아보겠습니다. date 함수는 날짜를 다루는 가장 기본 함수 중에 하나인데요. 날짜를 다룰 때 알아야 할 기본 사항이 있습니다. 날짜 데이터가 실제 저

ryusfactory.tistory.com

 

DATE함수는 년-월-일 날짜형식으로 바꿔주는 기능을 하는 함수이고 실제로 우리가 원하는 숫자를 뽑아내는 거는 그 안에 있는 MID, FIND함수입니다.

 

DATE함수 안에 있는 인수를 년/월/일로 나눠서 각각 보도록 하겠습니다.

 

-> 년 인수 : "20"&MID(B3, FIND(".", B3)-2,2)

위 수식을 해석하려면 FIND와 MID에 대한 기본적인 이해가 필요한데요. 간단히 설명하면 FIND함수는 특정 셀에 있는 글자가 그 셀에서 몇 번째에 위치해있는지 숫자를 뽑아내는 함수입니다. MID함수는 셀에 있는 특정 위치부터 몇개의 글자를 가져올건지 정하는 것입니다. 그래서 "20"은 고정이니 텍스트형식으로 &를 이용해 연결해주고 그 뒤에 23을 MID와 FIND함수를 중첩해서 가져오는 것입니다.

 

FIND함수를 보시면 "."가 B3셀에서 몇번째에 있는지 가져옵니다. B3셀을 보면 23.7/2 이기 때문에 3번째겠죠?

거기서 -2를 하면 1이 됩니다. 그러면 결국 첫 번째 글자부터 가져오는셈이 되는 것이죠. 그리고 MID함수를 쓰면 첫번째 글자부터 두 글자를 가져오게 됩니다. 그래서 23을 가져올 수 있는 것이죠. 그럼 앞의 20과 붙어 2023이 추출되는 것입니다. MID와 FIND함수 조합은 이외에도 실무에서 굉장히 쓰일 일이 많기 때문에 확실히 개념을 익히시길 추천드립니다.

 

->월 인수 : "0"&MID(B3, FIND(".", B3)+1,1)

->일 인수 : "0"&MID(B3, FIND("/", B3)+1,1)

 

이제 위 두 가지 인수도 충분히 이해가 되시겠죠? MID FIND로 원하는 숫자를 가져오고 "0"을 앞에 붙여주는 것이죠. 그럼 0701 이런 식으로 나타나게 됩니다.

 

 

위 수식으로 추출하면 2023-07-02 이렇게 나타나게 됩니다. 왜냐하면 DATE함수가 기본적인 날짜형식인 년-월-일 방식으로 표시하는 함수이기 때문입니다. 이제 이렇게 표기된 형식을 저희가 원하는 20230702로 바꾸기만 하면 됩니다.

 

이때 필요한 함수가 TEXT함수입니다.

TEXT함수를 활용한 수식

=TEXT(DATE("20"&MID(B3, FIND(".", B3)-2,2), "0"&MID(B3, FIND(".", B3)+1,1), "0"&MID(B3, FIND("/", B3)+1,1)), "yyyymmdd")

 

TEXT함수는 엑셀에서 텍스트를 원하는 형식으로 변환하는 데 사용되는 강력한 함수 중 하나입니다. 날짜, 시간, 숫자 등 다양한 데이터를 원하는 서식에 맞춰 표시할 수 있죠.

 

TEXT함수는 기본적으로 =TEXT(값, 형식) 이렇게 인수가 구성되어 있고, 여기서 "값"은 변환하려는 데이터를 나타내고, "형식"은 데이터를 어떻게 표시할지를 지정하는 서식입니다. 

 

-값 : DATE("20"&MID(B3, FIND(".", B3)-2,2), "0"&MID(B3, FIND(".", B3)+1,1), "0"&MID(B3, FIND("/", B3)+1,1))

-형식 : "yyyymmdd"

 

값은 앞서 저희가 같이 봤던 DATE함수로 뽑아낸 2023-07-02인데 이걸 "yyyymmdd" 이런 형식으로 바꿔주는 것이죠. "yyyy년mm월dd일" 이렇게 형식을 바꿔주면 2023년 07월 01일 이렇게도 표시할 수 있습니다.

 

오늘은 실무에서 아주 유용한 날짜형식 바꾸는 함수에 대해 알아보았는데요. 함수가 4개나 중첩돼서 조금 헷갈릴 수 있지만 잘 응용만하면 여러상황에 적용될 수 있는 기능이기 때문에 반드시 내것으로 만드시길 추천드립니다.

 

2020.06.05 - [엑셀/함수] - 엑셀 INDEX MATCH 함수 쓰는 방법

 

엑셀 INDEX MATCH 함수 쓰는 방법

실무에서 가장 많이 쓰이는 함수를 하나 꼽으라면 단연코 vlookup 함수가 1등일 것 입니다. 그런데 vlookup 함수는 한계가 있습니다. 조건이 두개 일 경우 임의로 자료를 가공해야하는 불편함이 있습

ryusfactory.tistory.com

2021.02.12 - [엑셀/함수] - 엑셀 ISNUMBER, ISERROR, ISBLANK 사용법

 

엑셀 ISNUMBER, ISERROR, ISBLANK 사용법

오늘은 IS함수라고 불리는 함수들을 알아볼 텐데요. IS함수 9개에 대해 알아보고 예제로 자주 쓰이는 ISNUMBER, ISERROR, ISBLANK가 어떻게 활용되는지 알아보겠습니다. 이 함수들의 목적은 인수로 지정

ryusfactory.tistory.com

 

반응형

댓글