티스토리 뷰

엑셀의 워크플로우(데이터 > 가공 > 보여주기) 중 데이터 파트를 집중적으로 알려드리고 있습니다. 데이터를 잘 다룰 줄을 알아야 나중에 함수나 차트 등으로 가공하고 보여주는데 어려움이 없기 때문에 이 부분은 무척 중요합니다.

그 중에서도 '날짜' 부분은 엑셀 데이터를 다루다보면 수도 없이 나오면서 개념도 헷갈리는 편이기 때문에 잘 익혀두는 것이 중요합니다. 이번 강의에서는 '날짜'의 표시형식에는 어떤 것들이 있는지 자세히 설명해 보겠습니다.

 

1 ~ 2,958,475 까지의 정수가 날짜에 대응된다

 

이 부분은 앞선 강의에서 설명드린 바가 있습니다.

 

이때는 기본적인 개념을 잡는 시간이었으므로 간략히 설명드렸기 때문에 오늘은 좀 더 자세히 이야기할 필요가 있을 것 같습니다.

엑셀은 숫자의 정수 부분을 각각의 날짜와 일대일로 대응시켜 데이터를 저장합니다. 정확히는 1900년 01월 01을 숫자 1로 하고, 그 뒤로 하루가 지날 때마다 숫자는 1씩, 날짜는 하루씩 증가하는 방식입니다.

이런 방식을 사용하면 여러가지 장점이 있습니다.

예를 들어 두 날짜의 차이를 구하기 위해서는 단순히 날짜를 빼기만 하면 됩니다.

 

구분 A B
날짜 1900년 1월 1일 1900년 2월 20일
숫자 1 51

 

예를 들어, B와 A의 날짜 차이를 계산하기 위해서 한 달이 30일인지 31일인지 고민할 필요가 없습니다. 그냥 51에서 1을 빼서 50을 구하고 날짜 차이가 50일이구나 바로 알 수 있습니다.

 

또한 요일을 알기 위해서도 복잡한 계산을 할 필요가 없습니다. 그저 날짜에 대응하는 숫자를 7로 나눈 나머지가 몇 인지만 확인하면 됩니다.

왜냐하면 숫자 1에 대응하는 1900년 1월 1일이 일요일이었기 때문에 7로 나눈 나머지에 따라 요일이 다음과 같을 거라는 걸 쉽게 예상할 수 있기 때문입니다.

 

 

예를 들어, 2020년 10월 10일은 엑셀에서 대응되는 숫자가 44,114입니다. 이를 7로 나눠보면 나머지가 0인 것을 확인할 수 있습니다.

 

구분 A B
날짜 1900년 1월 1일 2020년 10월 10일
숫자 1 44,114
7로 나눈 나머지 1 0

 

표와 비교해보면 요일은 토요일입니다. 이처럼 편리한 연산들이 가능하기에 엑셀은 1부터 시작하는 숫자로 날짜를 관리하고 있는 것입니다.

 

날짜에 관한 표시형식

 

그러나 엑셀과 달리 사람은 정수형태로 된 날짜만을 보고 날짜를 바로바로 떠올릴 수가 없습니다. 그렇기 때문에 엑셀은 '표시형식' 기능을 통해서 [실제값]은 정수형태로 되어 있는 날짜를 사람이 볼 수 있는 [형식]으로 바꿔 [보이는 값]으로 만들어 줍니다.

그리고 이때 국가나 문화권마다 날짜를 표현하는 방식들이 다르기 때문에 사용자가 선택할 수 있는 다양한 옵션들을 제공합니다.

 

(1) 연도와 관련된 표현들

 

연도에 관한 표현은 yyyy와 yy 가 있습니다. 숫자에 해당하는 날짜의 연도를 각각 4자리 또는 2자리로 반환해줍니다.

똑같은 4개의 숫자를 써놓은 예제를 만들어 보았습니다. 

 

아직 '표시형식'을 적용하지 않았기에 모두 같은 값으로 보입니다. 여기에 각각 '날짜', 'yyyy', 'yy'라고 표시형식을 적용해 보겠습니다.

 

 

참고로 '날짜'는 셀 서식에 있는 엑셀 제공 옵션을 사용했습니다. 그리고, yyyy와 yy는 문자 그대로 그렇게 입력했습니다.

 

 

표시형식을 바꾸자 바로 [보이는 값]이 우리가 알아볼 수 있는 날짜 형태로 바뀝니다. 44,227은 2021년 01월 31일에 해당하는 숫자였음을 알 수 있습니다. 2021년도이기에 yyyy에서는 2021이, yy에서는 21이 표시됩니다.

이때, [B4] 셀에 2021, [B5] 셀에 21이라 보이긴 하지만 그곳에 있는 [실제 값]은 [44,227]이라는 것을 잊으시면 안됩니다.

 

(2) 달과 관련된 표현들

 

연도가 yyyy, yy 2개였던 것과 달리, 달은 mmmmm, mmmm, mmm, mm, m 5가지 기호를 사용합니다. 직접 보여드리겠습니다.

 

 

  • mmmmm은 영어로 된 월력의 첫 글자만 표시합니다.
  • mmmm은 영어로 된 월력의 전체 글씨를 표시합니다.
  • mmm은 영어로 된 월력의 앞 3글자만 표시합니다.
  • mm은 01, 02, 03 ... 10, 11, 12 형태의 아라비아 숫자로 월력을 표시합니다.
  • m은 1, 2, 3, ... 10, 11, 12 형태의 아라비아 숫자로 월력을 표시합니다.

 

(3) 일과 관련된 표현들

 

일과 관련된 표현들은 dd와 d가 있습니다. 월의 mm과 m과 똑같기 때문에 이해하기 어렵지 않습니다.

 

 

이번 예시에서는 숫자 31은 어차피 2자리 수이기 때문에 dd를 쓰나 d를 쓰나 같은 모습으로 보입니다. 만약 31일이 아니라 7일이었다면 dd를 썼을 땐 07 로, d를 썼을 땐 7 로 표시되어 있었을 것입니다.

 

(4) 요일과 관련된 표현들

 

요일과 관련된 표현은 dddd와 ddd가 있습니다. 요일은 국가별로 사용하는 용어가 다르기 때문에 국가코드와 함께 사용하면 표현을 확장할 수가 있습니다.

 

이 역시 예를 통해 살펴보겠습니다.

 

 

  • dddd와 aaaa는 요일을 풀네임으로 표현합니다. 
  • ddd와 aaa는 요일을 약어로 표현합니다.
  • 요일 앞에 어떤 국가코드를 붙이느냐에 따라 표현되는 내용이 달라집니다. 이때, dddd는 영어가 기본옵션이고, aaaa는 한글이 기본옵션이기 때문에 국가코드를 붙이지 않으면 각각 기본옵션으로 요일이 표시됩니다.

 

한글은 aaaa로, 영어는 dddd로 사용하면 국가코드를 쓸 필요가 없고, 가끔 한자가 필요하다면 [$-ja] 를 붙이고 아무거나 사용하면 됩니다. 여기서 ja는 JAPAN의 약자입니다.

 

 

날짜와 글자를 조합하는 방법

 

이제 날짜와 글자를 조합해서 원하는 표시 형식을 정하시면 됩니다. 예를 들어 "2021-01-31"과 같은 양식을 사용하고 싶으시면 "yyyy-mm-dd" 라고 표시형식을 정하시는 것이지요.

 

그런데 이때 날짜의 표시형식은 되도록 입력했을 때 엑셀이 날짜로 자동 인식할 수 있는 형태를 갖추는 게 좋습니다. 예를 들어보겠습니다.

 

 

이렇게 양쪽에 똑같은 날짜가 기록되어 있다고 가정해보겠습니다. 그리고 B열과 C열의 '표시형식'을 각각 다음과 같은 형태로 지정합니다.

 

 

두 표시형식 모두 똑같은 숫자(날짜)를 각각 슬래시(/)와 구두점(.)을 사용해 표현한 것이므로 큰 차이가 없다고 생각하실 수도 있습니다. 그러나 실제는 후자처럼 자료를 만들었다가 나중에 큰 고생을 할 가능성이 높습니다.

왜냐하면 사람은 기존에 있던 값을 보며 값을 입력하기 때문에, 새롭게 자료를 추가하거나 취합을 할 때 '눈에 보이는 값'과 동일하게 값을 입력할 가능성이 높기 때문입니다.

바로 이런 식으로 말이죠.

 

각각 yy/mm/dd 형태, yy.mm.dd 형태로 값을 입력한 경우

 

무언가 큰 차이점이 보이지 않으십니까? yy/mm/dd 는 우측 정렬, yy.mm.dd는 좌측 정렬이 되어 있는 모습이 보입니다. '엑셀 강의 04번. 문자와 숫자를 구분해야 한다'에서 우측정렬은 숫자(날짜), 좌측정렬은 문자라는 말씀을 드린 적이 있습니다. 바로 그 현상이 지금 일어난 것입니다.

셀에 적혀 있는 [실제 값]을 한 번 확인해 보겠습니다. 모든 셀을 선택하고 표시 형식을 한 번 '일반'으로 바꿉니다.

 

 

날짜에 대응하는 숫자로 [보이는 값]이 변경된 나머지 셀들과 달리 유독 [C31]번 셀의 날짜만 [21.03.25] 로 그대로 남아 있습니다. 왜냐하면 21.03.25는 애초에 데이터가 [숫자로 입력되어 yy.mm.dd 형태로 표시]된 것이 아니라, 그저 [이십일쩜공삼쩜이오]라는 문자로 데이터가 입력되어 있었던 것이기 때문입니다.

 

그럼, 21/03/25는 왜 숫자로 변경됐을까요? 그것은 엑셀에서 대쉬(-)와 슬래시(/)를 사용하는 입력을 자동으로 날짜(숫자) 형식으로 변환해주기 때문입니다. 따라서 다음과 같이 엑셀이 날짜로 자동 전환해주는 표시방식을 사용하는 것이 나중에 실수를 할 확률을 줄일 수 있습니다.

  • 2021년 03월 25일 - 년, 월, 일로 날짜를 표시하는 형태 (스페이스바)
  • 25 March 2021 - 일, 월(영어), 년 순서로 입력하는 형태 (스페이스바)
  • 2021/03/25 또는 21/03/25 - 년, 월, 일로 날짜를 표시하는 형태(슬래시)
  • 2021-03-25 또는 21-03-25 - 년, 월, 일로 날짜를 표시하는 형태(대쉬)

 

이때, 연도를 입력하지 않고 '월, 일'만 적으면 연도는 자동으로 문서를 작성한 해의 연도로 입력됩니다. 연도에 관한 실수를 막기 위해서 연도도 꼭 표시되도록 표시형식을 만들어주는 것이 좋습니다.

 

예제 파일

 

예제파일09.xlsx
0.01MB

 

 

 

 

 

 

 

 

댓글