[Excel] 엑셀로 날짜의 차이 구하기 - DAYS, DATEDIF

    날짜값들의 차이를 구하는 방법이 하나만 있는게 아닌데 우선 매우 간단한 DAYS부터 설명해도록 하겠습니다.

     

    DAYS 함수 (일수 계산)

    DAYS는 날짜값간의 차이를 일수로 리턴해주는 매우 심플한 함수입니다.

     

    사용법

    DAYS(date1, date2)

    이처럼 2개의 인자값을 넣어주면, 해당 날짜간의 차이를 리턴합니다.

     

    days 사용 예

     

    참고로 첫번째 날짜가 두번째 날짜보다 더 이전이면, 음수값이 리턴이 됩니다. 그러니 첫번째 값에 더 최근의 값을 넣고, 뒷값에 이전값을 넣는 방식을 하거나 계산 이후 절대값 함수(ABS)를 호출하면 됩니다.

     

    음수로 나오는 경우

     

    위 이미지를 보면, A1이 A2보다 날짜가 더 이전이다보니 연산 결과가 음수로 나왔습니다.

     

    ABS 함수를 호출한 케이스

    이렇게 음수값이 나와도 최종적으로 ABS를 붙이면 양수로 변환이 되니, 날짜 계산을 할 때에는 ABS로 변환하는 것이 제일 깔끔할 것 같습니다.

     

     

    DATEDIF (원하는 형식으로 날짜 계산)

    사실 DAYS 함수보다 DATEDIF 함수를 훨씬 많이 사용합니다. DAYS가 가능한 계산은 DATEDIF도 가능하지만, DATEDIF가 계산하는 것은 DAYS가 못하기 때문입니다.

     

    DATEDIF와 DAYS의 차이는 단 하나, 최종적으로 나오는 결과를 어떤 방식으로 리턴을 할 지 설정을 할 수가 있습니다.

     

    사용법

    DATEDIF(날짜1, 날짜2, 반환형태)

     

    DATEDIF의 추가 인자값 (3번째, 반환형태)

    Unit

    반환 값

    "Y"

    해당 기간에 포함된 전체 연도 수

    "M"

    해당 기간에 포함된 전체 개월 수

    "D"

    해당 기간에 포함된 날짜 수

    "Ym"

    start_date와 end_date의 개월 차이. 두 날짜의 일과 연도는 무시됩니다.

    "YD"

    start_date와 end_date의 날짜 차이. 두 날짜의 연도는 무시됩니다.

    즉 위 값을 추가로 넣으면, 원하는 형태로 출력을 한다는 것입니다. 하나씩 테스트 하는 것이 더 정신 없으니 한번에 결과를 뿌려보도록 하겠습니다.

     

    DATEDIF 사용결과

     

    위 인자들을 보시면, Y는 전체 연도 수라고 나와 있는데 1을 반환하는 것을 보면 날짜 계산이 만으로 넘겨야 카운트가 된다는 것을 알 수 있습니다. M은 개월 수 차이, D는 날짜 차이(DAYS랑 동일), Ym은 둘간의 년도와 날짜는 무시하고 개월수만 차이를 계산하며 마지막 YD는 연도를 무시한 날짜 차이입니다.

     

    사실상, Ym과 YD는 사용할 일이 매우 극히 드문 것으로 Y,M,D만 기억해도 되며, 여기서 DAYS와 또 다른 차이는 날짜의 순서와 상관없이 양수만 리턴이 된다는 것입니다. 그러니 DATEDIF 함수를 ABS()로 감쌀 필요는 없습니다.

     

     

    연관 포스팅

     

     

     

    반응형

    댓글

    Designed by JB FACTORY