
엑셀만 켜면 날짜가 엉망진창으로 표기돼서 골치 아프셨죠? 분명 '2024-03-09'라고 입력했는데, 엑셀은 이걸 '2024/03/09'도 아니고 '45357' 같은 숫자로 바꿔버릴 때가 있거든요. 대체 왜 이러는 걸까요? 🤨
사실 이 현상은 엑셀의 '속성' 때문에 생기는 거랍니다. 엑셀은 날짜와 시간을 컴퓨터가 이해하는 '숫자'로 저장해요. 그래서 우리가 날짜처럼 보이게 입력해도, 엑셀은 그걸 숫자로 인식하고 저장해버리는 거죠. 문제는 이게 우리가 원하는 날짜 형식으로 안 보일 때 생긴다는 건데요. 오늘은 이 '날짜 인식 오류'를 깔끔하게 해결하는 방법, 특히 엑셀에서 가장 많이 쓰는
TEXT
함수를 활용하는 방법을 자세히 알려드릴게요.
엑셀이 날짜를 숫자로 보는 이유

엑셀에서 날짜가 숫자로 보이는 건, 엑셀이 날짜와 시간을 '순차적인 숫자'로 관리하기 때문이에요. 1900년 1월 1일을 '1'로 보고, 그 이후 날짜를 1씩 증가하는 숫자로 계산하는 방식이죠. 예를 들어, 2024년 3월 9일은 엑셀 내부적으로는 '45357'이라는 숫자로 저장되어 있어요.
이런 방식은 날짜 계산이나 기간 산출에 유리하긴 하지만, 우리가 데이터를 그대로 봤을 때 날짜로 인식하지 못하는 문제를 일으키곤 해요. 특히 다른 프로그램에서 데이터를 가져오거나, 셀 서식을 잘못 지정했을 때 이런 문제가 자주 발생하죠.
TEXT
함수로 날짜를 원하는 형식으로!

이런 문제를 해결하는 가장 쉽고 효과적인 방법 중 하나가 바로
TEXT
함수를 사용하는 거예요.
TEXT
함수는 어떤 값이든 우리가 원하는 '문자열 형식'으로 바꿔주는 마법 같은 함수거든요.
함수 사용법은 아주 간단해요.
=TEXT(값, "서식")
이렇게 사용하면 되는데, 여기서
값
에는 날짜가 들어있는 셀을 지정하고,
"서식"
에는 우리가 원하는 날짜 형식을 큰따옴표 안에 넣어주면 됩니다.
📌 자주 쓰이는 날짜 서식 코드
yyyy: 네 자릿수 연도 (예: 2024)mm: 두 자릿수 월 (예: 03)m: 한두 자릿수 월 (예: 3)dd: 두 자릿수 일 (예: 09)d: 한두 자릿수 일 (예: 9)aaa: 요일 (예: 금)a: 요일 (예: 금요일)
이 코드들을 조합해서 원하는 형식을 만들 수 있어요. 예를 들어 '2024년 03월 09일 (목)'처럼 표시하고 싶다면,
=TEXT(A1, "yyyy년 mm월 dd일 (aaa)")
이렇게 입력하면 되는 거죠.
TEXT
함수, 이것만은 꼭! (주의사항)

TEXT
함수를 사용하다 보면
#VALUE!
오류를 만나는 경우가 종종 있거든요. 이럴 땐 대부분 서식 코드를 감싸는 큰따옴표(
"
)를 제대로 입력하지 않았을 때 발생해요.
"yyyy년 mm월 dd일"
처럼 반드시 쌍따옴표로 감싸야 제대로 작동한답니다.
또 하나 중요한 점은,
TEXT
함수로 변환된 결과는 '텍스트'라는 거예요. 그래서 이 결과를 가지고 날짜 계산을 하려고 하면 오류가 나거나 원치 않는 결과가 나올 수 있어요.
만약
TEXT
함수로 바꾼 결과값으로 계산을 해야 한다면,
VALUE
함수를 사용하거나 결과값에 숫자 1을 곱해서 다시 숫자로 변환해줘야 해요. 예를 들어
=VALUE(B1)
또는
=B1*1
처럼 말이죠.
TEXT
함수, 날짜 말고도 이렇게 쓰여요!

TEXT
함수는 날짜뿐만 아니라 다양한 숫자 서식에도 아주 유용하게 쓰여요.
- 금액에 천 단위 콤마 찍기:
=TEXT(1234567, "#,##0")→ '1,234,567' - 퍼센트(%)로 표시하기:
=TEXT(0.55, "0.0%")→ '55.0%' - 특정 숫자를 0으로 채우기:
=TEXT(5, "0000")→ '0005'
이처럼
TEXT
함수를 잘 활용하면 엑셀 데이터를 훨씬 깔끔하고 보기 좋게 만들 수 있답니다.
엑셀 날짜 오류, 이제 걱정 끝!

정리하자면, 엑셀에서 날짜가 숫자로 보이는 건 엑셀 내부 처리 방식 때문이고, 이럴 땐
TEXT
함수를 이용하면 원하는 날짜 형식으로 손쉽게 바꿀 수 있다는 거예요. 함수 사용법과 주의사항만 잘 기억하면, 앞으로 엑셀에서 날짜 때문에 골치 썩을 일은 훨씬 줄어들 거예요.
💡 핵심 요약
- 엑셀은 날짜와 시간을 내부적으로 숫자로 처리하기 때문에, 종종 날짜가 숫자로 보이게 됩니다.
TEXT함수를 사용하면 날짜 데이터를 원하는 문자열 형식으로 변환할 수 있습니다. (=TEXT(값, "서식"))- 서식 코드(
yyyy,mm,dd등)는 반드시 큰따옴표(")로 감싸야 하며,TEXT함수 결과는 텍스트이므로 계산 시VALUE함수 등으로 다시 숫자로 변환해야 합니다.
❓ 자주 묻는 질문 (FAQ)
Q1: 엑셀에서 날짜를 입력했는데 '45357'처럼 숫자로만 보여요. 왜 그런가요? A1: 엑셀은 날짜를 내부적으로 숫자로 저장하기 때문입니다. 1900년 1월 1일을 '1'로 보고 계산하는데, '45357'은 2024년 3월 9일에 해당하는 숫자예요.
Q2: '45357'을 다시 '2024-03-09'로 바꾸려면 어떻게 해야 하나요? A2: 해당 셀의 서식을 '날짜' 형식으로 변경하거나,
=TEXT(A1, "yyyy-mm-dd")
와 같이
TEXT
함수를 사용하여 원하는 형식으로 변환할 수 있습니다.
Q3:
TEXT
함수를 썼는데
#VALUE!
오류가 나요. A3: 대부분 서식 코드를 큰따옴표(
"
)로 제대로 감싸지 않았을 때 발생합니다.
"yyyy-mm-dd"
처럼 쌍따옴표로 감쌌는지 다시 확인해보세요.
Q4:
TEXT
함수로 바꾼 날짜로 날짜 계산을 하려면 어떻게 하나요? A4:
TEXT
함수 결과는 텍스트이므로 직접 계산이 어렵습니다.
VALUE
함수를 사용하거나, 해당 셀 값에 숫자 1을 곱하여 다시 숫자로 변환한 후 계산해야 합니다. (예:
=VALUE(B1)
또는
=B1*1
)
Q5: 엑셀에서 특정 날짜를 '월요일', '화요일'처럼 요일로 표시하고 싶어요. A5:
TEXT
함수에 요일 서식 코드를 사용하면 됩니다. 예를 들어, A1 셀에 날짜가 있다면
=TEXT(A1, "yyyy년 mm월 dd일 (aaa)")
와 같이 입력하면 '2024년 03월 09일 (토)'와 같이 표시됩니다.
aaa
는 요일을,
a
는 요일을 더 길게 표시합니다.
Q6: 엑셀에 날짜를 입력할 때마다 자동으로 'yyyy-mm-dd' 형식으로 되게 설정할 수 있나요? A6: 네, 가능합니다. 해당 셀 또는 셀 범위를 선택한 후 마우스 오른쪽 버튼을 눌러 '셀 서식'으로 들어가 '표시 형식' 탭에서 '사용자 지정'을 선택하고 'yyyy-mm-dd' 형식 코드를 입력하면 됩니다.