엑셀관련/함수사용

[엑셀/EXCEL]날짜, 시간을 다루는 함수 - 날짜편 2편

22rodnjf 2021. 4. 4. 20:34

엑셀을 다루다 보면 날짜를 다루는 경우가 매우 많습니다.

일전에 알려 드렸던 내용의 경우 정수형, 혹은 날짜형 서식으로 이루어지지 않은 숫자를 날짜형 서식으로 변경하는 방법에 대해서 설명을 드렸습니다.

2021.03.30 - [엑셀 관련/함수 사용] - [엑셀/EXCEL] 날짜, 시간을 다루는 함수 - 날짜 편

 

[엑셀/EXCEL]날짜, 시간을 다루는 함수 - 날짜편

엑셀 작업을 하다 보면 시간과 날짜를 다뤄야 하는 일이 많이 있습니다. 다양한 양식으로 변환되어 있는 값들을 날짜, 시간 서식으로 바꿔야 하는 경우도 있고 그 반대의 경우도 많습니다. 숫자

studiolettuce.tistory.com

그렇다면 반대로 날짜형 서식으로 이루어진 값을 원하는 형식으로 변경하는 방법을 설명드리겠습니다.


 

데이터는 날짜에 대한 단순한 표입니다.

엑셀 표에 있는 것처럼 날짜 서식으로 만들어져 있는 값을 년, 월, 일, 년월, 월일로 표현하는 방법으로 설명드리겠습니다.

설명드려야 하는 함수의 종류가 많기 때문에 함수 설명을 각 항목에서 드리겠습니다.

 

1. 년, 월, 일

1) 년

년을 추출하는 함수는 =year(serial_number) 함수입니다.

 

함수 구조가 굉장히 단순합니다.

serial_number에 날짜 서식으로 구성된 값을 넣으면 자동으로 그 값의 연도를 추출해줍니다.

 

2) 월

월을 추출하는 함수는 =month(serial_number) 함수입니다.

월 함수 역시 단순합니다.

serial_number에 날짜 서식으로 구성된 값을 넣으면 그 값의 월을 추출해줍니다.

3) 일

일을 추출하는 함수는 =day(serial_number) 함수입니다.

일의 경우 추가 설명은 필요 없을 것 같습니다.


2. 년월, 월일을 조합하기

년월과 월일을 조합하는 방법은 concat 함수를 사용해서 문자열을 붙여주기면 하면 됩니다.

 

그런데 이렇게 붙이게 될 경우 월이 1로만 표시되기 때문에 만약 202101이라고 표현하고 싶다면 정상적으로 표현할 수가 없습니다.

여기에는 추가적인 함수를 넣어줘야만 원하는 형태로 함수를 표현할 수 있습니다.

이 함수는 복합적이기 때문에 완성된 함수를 먼저 보여드리겠습니다.

이 함수의 구조에서 중요한 것은 LEN이라는 함수입니다.

LEN은 해당 문자열의 개수를 확인하는 함수입니다. 월을 month로 불러오게 되면 2개의 형태가 나오게 됩니다.

1~9월(1자리), 10~12월(2자리) 이렇게 2가지 형태를 가지고 있다 보니 LEN을 이용해서 문자열의 수를 가져오게 될 경우 1과 2 두 가지 형태가 나오게 됩니다.

이를 이용해 IF 함수를 이용해서 1보다 작을 경우 concat 함수와 조합해 앞에 0을 붙여 주도록 하고, 2일 경우 그대로 값을 가져오도록 합니다.

 

이렇게 구조를 하게 될 경우 월의 값을 항상 두 자릿수로 표기할 수 있습니다.

일자는 이와 같은 구조를 사용하게 될 경우 동일하게 2자리로 표기할 수 있습니다.