[엑셀/구글스프레드시트] 날짜와 시간을 분리 추출하는 3가지 방법

     

    엑셀/구글스프레드시트 - 날짜와 시간을 분리 추출하는 3가지 방법

    2023-4-7 10:00:00 와 같은 날짜 정보가 있다고 가정해 보자.

    만약, 이 값으로부터 2023-4-7이라는 날짜와 10:00:00 이라는 시간을 각각 분리하고 싶다면 어떻게 하면 좋을까?

    엑셀 혹은 구글스프레드시트를 사용하여 데이터를 관리하다 보면, 분명히 이 값을 분리 사용해야 하는 순간이 오기 마련이다.

    본 글에서는, 이 두 가지 값을 분리하는 방법 3가지에 대해 정리하고자 한다.

     

    방법 1 - 날짜/ 시간 관련 함수 사용하기

    날짜, 시간과 관련된 함수를 사용하는 가장 정직한 방법이다.

    • year()
    • month()
    • day()
    • hour()
    • minute()
    • second()

    함수를 써서, 각각 연/월/일/시/분/초 값을 추출할 수 있다.

     

    그리고, 이렇게 추출한 값과 date(), time() 함수를 사용하여 재조합하면 날짜와 시간 값을 분리할 수 있다.

     

    방법 2 - 문자열로 처리하기

    날짜, 시간을 포맷을 지정한 문자열로 변환하는 방법도 활용할 수 있다.

    • text(셀, 포맷)

    의 함수를 쓰면 된다.

    포맷에 "YYYY-MM-DD"를 기록하면 연-월-일의 값이 출력되고, HH-MM-SS라고 기록하면 시-분-초의 값을 얻을 수 있다.

     

    반응형

     

    방법 3 - 숫자로 변환하여 처리하기

    날짜도 사실 엑셀 내부에서는 숫자로 관리된다.

    다만, 지정한 표현 형식에 따라 날짜 형태로 변환하여 보여줄 뿐이다.

    아마 엑셀 사용자라면, 날짜나 시간을 입력한 어떤 셀이 날짜로 나타나지 않고 숫자로 나타나는 것을 본 경험이 있을 것이다.

    그래서, 날짜 형식으로 변환해줘야만 했던 그 경험을 살려보자.

    위의 예에서 보는 바와 같이, 00:00:00 이 아니라면 소숫점 이하의 숫자가 존재하는 것을 확인할 수 있다.

    따라서, 어떤 시각을 임의로 정수화를 하면 00:00:00로 강제 보정이 된다.

    그리고, 00:00:00로 강제 보정한 타임스탬프의 표현 형식을 강제로 날짜 형식으로 변환하면 날짜 값을 추출할 수 있다.

    그러면, 날짜를 제외한 시분초는 어떻게 구할까?

    원래 시간에서 정수값만 뺀 후, 남은 값을 강제로 시간 형식으로 변환하면 시간 값만 추출할 수 있다.

     

    더보기

    댓글

    Designed by JB FACTORY