• 최초 작성일: 1999-09-08
  • 최종 수정일: 2026-09-29
  • 조회수: 25 회
  • 작성자: 권현욱 (엑셀러)
  • 강의 제목: 숫자와 문자 데이터 이해하기

들어가기 전에

오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.

하루도 빠짐없이, 매일 강좌판을 벌이면 이상한 사람으로 취급하실까봐 어제는 땡땡이 쳤습니다. 이해하시도록…

가끔씩 올라오는 왕초보님들의 황당한 질문들이 있습니다. 이 중에서 상당부분이 문자정보와 숫자정보의 이해부족에서 기인하는 것이 많더군요.

해서 이번 강좌에서는 문자정보와 숫자정보에 대해 설명을 드립니다. 사실 이것만 완전히 이해해도 초보자 신세는 면한다고 해도 과언이 아닙니다.

(아래 자료는 UNO21님의 것을 부분 인용한 것입니다)

권현욱(엑셀러)
저자: 권현욱(엑셀러), 아이엑셀러 대표

필자는 Excel 컨설턴트, 작가, 그리고 크리에이터입니다. 현재 Microsoft Excel MVP이며, 『챗GPT+엑셀 업무자동화 정석』을 비롯한 10여 권의 도서를 집필했습니다. Excel 자동화 및 생산성 향상 분야에서 25년 넘는 경력을 보유하고 있습니다.

권현욱(엑셀러) 님의 최신 포스트:
  • 최신 글을 불러오는 중...


26년 경력 Microsoft MVP 권현욱(엑셀러) 지음

📊 신간 전자책(PDF) · 287쪽 · 13500원

엑셀 대시보드를 만드는 최적의 '표준 3계층 구조'

  • 3초 안에 읽히는 화면 설계 감각 습득
  • Microsoft Excel MVP의 실전 노하우 수록
  • 중간마진 없는 합리적인 가격, 오직 아이엑셀러에서만!
지금 구매하기 완성 화면 보기

숫자와 문자 데이터 이해하기

핵심 요약

  • Excel의 숫자는 유효 자릿수 제한이 있어 긴 숫자를 계산용 숫자로 입력할 때 주의해야 합니다.
  • 날짜와 시간도 내부적으로는 일련번호 형태의 숫자로 저장되고 셀 서식에 따라 날짜처럼 표시됩니다.
  • TEXT와 NOW를 조합하면 내부 숫자 값을 원하는 날짜·시간 문자열 형식으로 표현할 수 있습니다.
자리수 숫자값 문자값
1 1 1
2 11 11
3 111 111
4 1111 1111
5 11111 11111
6 111111 111111
7 1111111 1111111
8 11111111 11111111
9 111111111 111111111
10 1111111111 1111111111
11 11111111111 11111111111
12 111111111111 111111111111
13 1111111111111 1111111111111
14 11111111111111 11111111111111
15 111111111111111 111111111111111
16 1111111111111110 1111111111111111
17 11111111111111100 11111111111111111
18 111111111111111000 111111111111111111
19 1111111111111110000 1111111111111111111
20 11111111111111100000 11111111111111111111

참고: 원문 표의 숫자값 18~20자리 행에는 변환 과정에서 생긴 끝자리 오차(008, 0016, 00416)가 남아 있었습니다. 본문 설명(15자리 이후는 0)에 맞추어 111111111111111000, 1111111111111110000, 11111111111111100000으로 정리했습니다. 또한 Excel은 숫자를 15자리까지만 유효하게 다루므로 15자리를 넘는 값은 텍스트로 입력해야 정확히 보존됩니다.

위의 그림 중 왼쪽의 숫자값을 보세요. 숫자값이 15자리까지만 표현되고 그 이상의 값은 0으로 표현되지요?

이것은 컴퓨터 에러도 아니고 엑셀상의 버그도 아닙니다. 어쩔수 없는 컴퓨터의 한계(!)입니다.

아시겠지만 컴퓨터는 모든 정보를 0 또는 1의 조합으로 인식합니다. 즉 우리가 어떤 글자를 집어넣어도 컴퓨터는 0과 1의 조합으로 번역하여 인식을 한다는 것이지요. 물론 20자리든 30자리든 맘만 먹으면 정확하게 만들수도 있었겠지만 프로그래머들이 적정규모라고 생각하고 책정해 놓은 것이 15자리라는 것입니다.

그렇기 때문에 15자리 이상의 계산에서 15자리 이후의 숫자는 전부 0으로 나타나는 것입니다.

밀레니엄 버그의 원인도 바로 이런데서 연유하는 것입니다.

도스 시절부터 컴퓨터를 다뤄온 분들은 640K한계라는 말을 많이 들어 보셨을 것입니다. 컴퓨터 프로그래머들이 초창기에 컴퓨터를 개발할 당시에는 기술력이 지금과는 비교할 수 없을 정도로 열악한 상태였습니다. 메모리 가격도 엄청나게 비쌌고요. 따라서 한정된 자원을 최대한 활용하기 위해 날짜를 표현하는데 있어서도 1999년에서 앞부분의 19를 생략하고 표시할 정도였으니까요.

각설하고,

="오늘은" & TODAY() & "일 입니다. 좋은 하루 되세요"

라고 입력하고 엔터키를 탁 쳐보세요.

그러면 아래와 같이 나타나지요?

오늘은36632일 입니다. 좋은 하루 되세요

참고: 앞의 결과(36632)와 뒤의 질문(36411)에 쓰인 숫자가 서로 다릅니다. 36632는 2000-04-16, 36411은 1999-09-08에 해당하는 일련번호로, 원문의 작성 시점이 달랐던 것으로 보입니다. 본문은 그대로 두었습니다.

'그렇다면 36411은 무엇일까?' 하는 의문이 들지요?

컴퓨터는 날짜개념이 없습니다. 그냥 숫자로 인식할 뿐이지요. 이 숫자를 프로그램에서 한번 가공하여 "어떤 숫자가 입력되면 그것을 몇 년 몇 월 몇 일로 가공하라"고 지정해 놓으면 그대로 화면에 나타내 주는 것입니다.

참고: 서식-날짜 메뉴는 구버전 메뉴입니다. 최신 Excel에서는 셀을 선택하고 Ctrl+1(셀 서식)을 눌러 표시 형식 탭에서 설정합니다.

아무 셀에나 1이라고 입력한 후 아래 그림처럼 서식-날짜 메뉴에서 97/3/4형식을 선택해 보세요

숫자와 문자 데이터 이해하기 예제 화면 1
아이엑셀러

참고: 원문에는 1899-12-31로 변환되어 있었습니다. 1을 97/3/4 형식으로 표시하면 00/1/1로 나타나므로 본문 설명(00년 1월 1일)에 맞추어 정리했습니다.

00/1/1 → 즉 00년 1월 1일로 인식을 하는 것입니다.

기왕 여기까지 설명을 드린김에 다음과 같이 입력해 보세요

="현재의 날짜와 시간은 " & TEXT(NOW(),"yy/mm/dd hh:mm am/pm") & "입니다"

위와 같이 입력을 하니까 오늘의 날짜와 시간이 화면상에 표시되지요?

현재의 날짜와 시간은 00/04/16 06:20 pm입니다

여기서 또 유용한 함수 한가지 알고 넘어 가지요. Text()함수는 여러 번 설명드렸으니 다들 아실테고, now()함수는 오늘의 날짜와 시간을 알려주는 함수입니다. 이 함수를 text()함수와 연결하여 사용하면 위와 같은 양식을 나타낼 수가 있는 것입니다.

질문 메일 보내신 분들, 답 안해 준다고 화내지 마시기를…

사실 같이 데리구(?) 있는 식솔들도 뿔딱지가 많이 나 있습니다. 자기들은 잘 안 갈쳐주고 엉뚱하게 전국의 불특정 다수를 상대로 강좌판만 벌인다고…

오늘은 여기까지…

정리 — 숫자와 문자 데이터 이해하기

구분내용
숫자 정밀도숫자는 15자리까지만 표현되고 그 이후 자리는 0으로 나타남
문자값문자로 입력한 값은 20자리 이상도 그대로 표시됨
날짜컴퓨터는 날짜를 일련번호(숫자)로 저장하고 서식에 따라 날짜로 표시함
예숫자 1에 97/3/4 날짜 서식을 지정하면 00/1/1로 표시됨
수식 1="오늘은" & TODAY() & "일 입니다" 는 오늘의 일련번호를 문자와 연결함
수식 2TEXT(NOW(),"yy/mm/dd hh:mm am/pm") 로 현재 날짜와 시간을 원하는 형식으로 표시

자주 묻는 질문 (FAQ)

Q1. 왜 15자리 이후의 숫자는 0으로 바뀌나요?

숫자를 15자리까지만 다루기 때문입니다. 컴퓨터 에러나 엑셀의 버그가 아니라 어쩔 수 없는 컴퓨터의 한계입니다.

Q2. TODAY 함수를 문자와 연결하면 왜 날짜가 숫자로 나타나나요?

컴퓨터는 날짜 개념이 없어 날짜를 일련번호 숫자로 저장하기 때문입니다. 서식을 지정해야 몇 년 몇 월 몇 일의 모양으로 표시됩니다.

Q3. 현재 날짜와 시간을 원하는 형식의 문자로 나타내려면 어떻게 하나요?

NOW 함수와 TEXT 함수를 연결합니다. 형식으로 yy/mm/dd hh:mm am/pm 을 지정하면 00/04/16 06:20 pm 과 같이 표시됩니다.

마치며

숫자와 문자, 날짜의 차이를 이해하면 초보 단계를 벗어나는 데 큰 도움이 됩니다. VBA에 대한 기초 지식을 공부하실 분은 아이엑셀러 닷컴 사이트 상단 메뉴에서 [Excel 강의] - [Excel 입문]을 먼저 보시면 이해하기 쉽습니다.