본문 바로가기
self.발표자료 준비

[Excel] 날짜 시간 데이터를 날짜와 시간 각각 추출, 분리하는 법 2편

by 톤토니 2023. 7. 8.
반응형

엑셀 시간분리

 

지난 시간에는 날짜와 시간이 함께 있는 데이터에서 날짜만 추출하는 법을 배웠다.

이번 시간에는 시간만 분리하는 법을 배워 볼 것이다.

 

본론에 들어가기 앞서 날짜 편을 빠르게 요약하면

 

1. 엑셀에서는 날짜와 시간을 숫자로 다룬다.

2. 하루를 1일로 시간은 24시간을 1로 계산한다.

3. 날짜시간에서 정수만을 추출하면 그것이 바로 날짜 데이터이다.

4. 가장 간편한 계산식은 Quotient(날짜셀, 1) > 표시형식 날짜로 변환!

 

이제 다시 본론으로 들어와서 시간만을 추출하는 방법을 알아보자.

 

날짜는 1로 계산하니 나눗셈에서 몫만 취하는 Quotient를 사용했으니,

시간은 당연히 나머지만을 구해주는 어떤 방법을 쓰면 될 것이다.

 

 

 

1. 첫번째 방법 : Mod 함수 사용하기

 

나눗셈을 할 때 몫이 아닌 나머지를 구해주는 함수인 "Mod"를 사용하면 쉽게 시간만을 구할 수 있다.

 

지난 시간에서 사용한 예제와 같은 예제를 사용하여 설명을 해보자면,

아래와 같이 표시형식이 "일반"인 B열 데이터와 B열을 날짜,시간으로 나타내준 C열이 있다고 했을 때 아무거나 Mod 함수를 사용할 수 있다.

 

이번에는 C열을 데이터를 Mod(c2, 1)로 소수만을 추출하였다.

여기서 "1"은 날짜 데이터를 무엇으로 나누었을 때의 나머지를 구해주냐는 뜻으로 무조건 "1"이 들어가야 한다.

1이 아닌 다른 숫자가 들어간다면 엉뚱한 결과가 나오니 주의해야 한다.

 

 

Mod 함수 결과

 

 

E열이 소수점인 시간을 보여주기는 하지만 이것은 엑셀만이 이해할 수 있는 숫자이다.

우리가 더 편하기 쉽게 E열을 복사해서 표시형식을 "시간"으로 바꾼 F열을 본다면

D열의 시간과 F열의 시간이 같아 시간만 잘 분리된 것을 알 수 있다.

 

 

표시형식 시간으로 설정한 결과

 

 

 

 

2. 두번째 방법 : 날짜 데이터 이용하기

 

이미 Quotient 함수를 통해 날짜만을 추출한 열을 구해놨다면 더 편한 방법으로 시간을 구할 수 있다.

날짜시간이 함께 있는 원 데이터에서 날짜만 있는 숫자를 빼준다면 당연히 시간만이 남게된다.

 

날짜를 먼저 구해놓으니 시간은 누워서 떡먹기처럼 무척 쉽고 간단하다.

이게 다 날짜와 시간을 숫자로 취급하는 엑셀 덕분이 아닐까?

 

 

왼쪽 - 날짜 구하는 방법 / 오른쪽 - 시간 구하는 방법

 

 

 

3. 번외 : Right 함수 이용하기

 

이 방법은 더 쉬운 방법을 두고 굳이 복잡한 방법을 사용하는 것은 추천하지 않기 때문에 번외로 넣어보았다.

이것은 날짜를 구할 때 썼던 Left 와 유사하게 Right 함수를 쓰며 추가로 Find까지 사용하는 좀 더 복잡한 방법이다.

 

방법을 아래와 같다.

 

1) 우선 "." 의 위치를 찾는다. => Find(".", 날짜숫자셀)

2) 점을 기준으로 뒤에 있는 소수의 자리 수를 세어준다. => len(날짜숫자셀) - find(".", 날짜숫자셀) +1

3) 그 점을 기준으로 뒤에 있는 것들을 다 가져온다.  => Right(날짜숫자셀, len(날짜숫자셀) - find(".", 날짜숫자셀) +1)

4) 수식이 아닌 값으로 변환해준다.

5) 오류표시에서 "숫자로 변환"으로 바꾸어 준다.

 

 

좀 복잡해 보이니 바로 실습 결과를 보도록 하자.

 

 

왼쪽 - 3번 까지 진행한 결과 / 오른쪽 - 5번까지 다 진행한 결과

 

여기서 왜 Len(C2)-Find(".", C2)에서 1을 더해줬을까 의문이 들 수 있다.

아래 예제를 통해 간단하게 생각해보면 우리는 소수가 필요한 것이기 때문에 두 번째 자리 수 부터 필요하다.

그렇다면 전체 자리 수는 6자리 Len(C2)이고 "."점의 자리 수 Find(".", C2)인 2를 빼주면 4가 나와서

8540라는 정수가 되어버린다. 그래서 1을 더해준다면 5가 되어 Right함수를 통해 오른쪽 5자리가 추출되는 것이다.

(엑셀은 소수점 앞에 0이 없어도 소수로 인식한다.)

 

 

 

4. 요약

1) Mod 방법 : Mod(날짜셀, 1) > 표시형식 시간으로 바꾸기 ; 시간만을 구하기에 가장 쉬운 방법

2) 날짜시간 데이터 - 날짜 데이터 ; 이미 날짜 데이터를 구했다면 가장 쉬운 방법

3) Find, Right 방법 : 그냥 쓰지 말자.....

 

 

 

※ 함께 보면 좋을 포스팅

2023.07.08 - [self.발표자료 준비] - [Excel] 날짜 시간 데이터를 날짜와 시간 각각 추출, 분리하는 법 1편

 

[Excel] 날짜 시간 데이터를 날짜와 시간 각각 추출, 분리하는 법 1편

오늘은 엑셀에서 은근 다루기 까다로운 날짜시간 데이터에서 날짜로 분리 혹은 추출하는 방법에 대해 알아보자. 엑셀에서 날짜와 시간은 사실 숫자이다. 1900년 1월 1일을 숫자 "1"로 지정하여 하

selfimprove39.tistory.com

 

반응형

댓글