엑셀 기간 계산 함수날짜 차이 계산 방법함수 사용법 자세히 보기

엑셀 기간 계산 함수

엑셀에서 날짜와 관련된 계산은 매우 빈번하게 발생합니다.
특히 특정 기간 동안의 차이를 계산하거나, 실제 업무일수를 산정해야 할 때 유용한 함수들이 있습니다.
엑셀에서 기간을 계산하는 대표적인 함수로는 DATEDIF, DAYS, NETWORKDAYS 함수가 있습니다.
이 함수들을 활용하면 복잡한 날짜 계산을 쉽고 정확하게 처리할 수 있습니다.
각 함수는 고유한 기능과 사용법을 가지고 있어, 상황에 맞게 적절한 함수를 선택하는 것이 중요합니다.

DATEDIF 함수로 연, 월, 일 상세 계산하기

DATEDIF 함수는 두 날짜 사이의 기간을 연도, 월, 일 등 다양한 단위로 계산할 때 가장 많이 사용됩니다.
이 함수는 다른 함수들과 달리 엑셀의 공식 함수 목록에 표시되지 않으며, 함수 자동 완성 기능도 지원하지 않아 직접 입력해야 하는 특징이 있습니다.
하지만 그만큼 유연하게 기간을 계산할 수 있다는 장점이 있습니다.

DATEDIF 함수의 기본 구문은 다음과 같습니다: `DATEDIF(start_date, end_date, “unit”)`.
여기서 `start_date`는 계산을 시작할 날짜, `end_date`는 계산을 종료할 날짜를 의미합니다.
가장 중요한 부분은 `”unit”`인데, 이 인수에 따라 계산 결과가 달라집니다.

  • “Y”: 두 날짜 사이의 전체 연도 수를 계산합니다.
  • “M”: 두 날짜 사이의 전체 월 수를 계산합니다.
  • “D”: 두 날짜 사이의 전체 일 수를 계산합니다.
  • “MD”: 월과 연도를 제외한 일수 차이를 계산합니다.
    예를 들어, 3월 10일과 4월 5일의 “MD” 차이는 26일입니다.
  • “YM”: 연도를 제외한 월 차이를 계산합니다.
    예를 들어, 2023년 3월 10일과 2024년 5월 15일의 “YM” 차이는 2개월입니다.
  • “YD”: 연도를 제외한 일수 차이를 계산합니다.
    예를 들어, 2023년 3월 10일과 2024년 5월 15일의 “YD” 차이는 66일입니다.

예를 들어, 2021년 3월 1일부터 오늘까지의 근속 연수를 계산하고 싶다면 `=DATEDIF(“2021-03-01”, TODAY(), “Y”)`와 같이 입력할 수 있습니다.
또한, 계약일과 마지막 날짜를 기준으로 총 근무 기간을 “년”, “월”, “일” 단위로 상세하게 표시하려면 `=DATEDIF(계약일, 마지막날짜,”y”)&”년”&DATEDIF(계약일, 마지막날짜,”ym”)&”개월”&DATEDIF(계약일, 마지막날짜,”md”)&”일”`과 같은 복합적인 수식을 사용할 수 있습니다.

DATEDIF 함수 사용 시 “MD” 단위는 특정 날짜 조합에서 버그가 발생할 수 있다는 점을 유의해야 합니다.
따라서 일수 계산 시에는 결과값을 다시 한번 확인하는 것이 좋습니다.

DAYS 함수로 총 일수 빠르게 계산하기

DAYS 함수는 두 날짜 사이의 총 일수를 계산하는 데 특화된 함수입니다.
DATEDIF 함수처럼 연, 월, 일 등 세부 단위를 나누지 않고, 단순히 시작일과 종료일 사이의 전체 날짜 수를 계산합니다.
이는 프로젝트 마감일까지 남은 일수를 계산하거나, 특정 기간 동안의 총 일수를 파악하는 데 유용합니다.

DAYS 함수의 구문은 다음과 같습니다: `DAYS(end_date, start_date)`.
여기서 `end_date`는 종료일, `start_date`는 시작일을 입력합니다.
DATEDIF 함수와 달리 종료일을 첫 번째 인수로, 시작일을 두 번째 인수로 입력해야 한다는 점에 유의해야 합니다.

예를 들어, 2021년 2월 1일부터 2021년 3월 15일까지의 총 일수를 계산하려면 `=DAYS(“2021-03-15”, “2021-02-01”)`과 같이 입력합니다.
이 경우 결과는 42일이 됩니다.
만약 시작일이 종료일보다 늦게 입력되면 음수 값이 반환되므로, 날짜 순서를 정확히 입력하는 것이 중요합니다.

DAYS 함수는 주말이나 공휴일을 고려하지 않고 단순히 날짜의 개수만을 계산합니다.
따라서 실제 업무일수를 계산해야 하는 경우에는 NETWORKDAYS 함수를 사용하는 것이 더 적합합니다.

NETWORKDAYS 함수로 실제 근무일수 계산하기

실제 업무 환경에서는 주말이나 법정 공휴일을 제외한 순수한 근무일수를 계산해야 하는 경우가 많습니다.
NETWORKDAYS 함수는 이러한 요구를 충족시켜 주는 함수입니다.
이 함수는 시작일부터 종료일까지의 전체 일수에서 주말과 사용자가 지정한 공휴일을 제외한 실제 근무일수를 계산합니다.

NETWORKDAYS 함수의 구문은 다음과 같습니다: `NETWORKDAYS(start_date, end_date, [holidays])`.
`start_date`와 `end_date`는 앞서 설명한 함수들과 동일하게 계산 시작일과 종료일을 의미합니다.
`[holidays]` 인수는 선택 사항으로, 근무일수 계산에서 제외할 공휴일 목록을 지정할 수 있습니다.
이 공휴일 목록은 별도의 셀 범위로 지정하거나 직접 날짜를 입력할 수 있습니다.

예를 들어, 2024년 2월 1일부터 2024년 2월 15일까지의 근무일수를 계산하면서, A2부터 A6 셀에 입력된 공휴일들을 제외하고 싶다면 `=NETWORKDAYS(“2024-02-01”, “2024-02-15”, A2:A6)`과 같이 입력할 수 있습니다.
이렇게 계산된 근무일수는 일당 계산이나 프로젝트 일정 관리 등에 활용될 수 있습니다.

NETWORKDAYS 함수는 일정 관리, 인력 배치 계획, 작업일 기준 데이터 분석 등 다양한 업무에서 실제 작업 가능 일수를 파악하는 데 매우 유용합니다.
예를 들어, 특정 프로젝트의 예상 완료일을 산정하거나, 직원의 휴가 일수를 계산할 때 이 함수를 활용하면 정확한 결과를 얻을 수 있습니다.

상황별 엑셀 기간 계산 함수 활용 팁

엑셀 기간 계산 함수는 사용자의 상황에 따라 다르게 활용될 수 있습니다.

  • 근속 기간 계산: 직원 채용 시 입사일로부터 현재까지의 근속 연수, 월, 일을 정확히 계산하여 인사 관리 자료로 활용할 수 있습니다.
    이때는 DATEDIF 함수를 사용하여 “Y”, “YM”, “MD” 단위를 조합하는 것이 효과적입니다.
  • 프로젝트 마감일 관리: 프로젝트 시작일과 예상 소요 일수를 바탕으로 마감일을 산정할 때 DAYS 함수를 사용하여 총 일수를 계산하고, 여기에 주말 및 공휴일을 고려하여 NETWORKDAYS 함수로 실제 작업 가능 일수를 파악할 수 있습니다.
  • 대출 이자 계산: 특정 기간 동안의 대출 원금에 대한 이자를 계산할 때, DAYS 함수를 사용하여 해당 기간의 총 일수를 파악하고 이를 이자율과 곱하여 계산할 수 있습니다.
  • 휴가 일수 계산: 직원의 연차 휴가 일수를 계산할 때, 휴가 시작일과 종료일을 입력하고 NETWORKDAYS 함수를 사용하여 실제 근무일을 제외한 휴가 일수를 정확하게 산출할 수 있습니다.

각 함수는 고유한 장단점을 가지고 있으므로, 계산하려는 목적과 필요한 정보의 상세 수준에 따라 적절한 함수를 선택하는 것이 중요합니다.
예를 들어, 단순히 두 날짜 사이의 총 일수만 필요하다면 DAYS 함수가 간편하며, 연, 월, 일 등 상세한 기간 정보가 필요하다면 DATEDIF 함수가 유용합니다.
실제 근무일수 계산이 필요하다면 NETWORKDAYS 함수를 사용해야 합니다.

날짜 형식에 주의하세요.
엑셀에서 날짜를 인식하지 못하는 경우, 날짜 형식을 “YYYY-MM-DD” 또는 “YYYY/MM/DD”와 같이 통일하거나, `DATE(년, 월, 일)` 함수를 사용하여 명확하게 지정해 주는 것이 좋습니다.

자주 묻는 질문 (FAQ)

DATEDIF 함수는 왜 함수 목록에 나타나지 않나요?
DATEDIF 함수는 엑셀의 공식적인 함수 목록에 포함되어 있지 않으며, 함수 자동 완성 기능도 지원하지 않습니다.
이는 이 함수가 이전 버전의 스프레드시트 프로그램과의 호환성을 위해 남아있는 함수이기 때문입니다.
따라서 함수를 사용할 때 직접 정확하게 입력해야 합니다.
DAYS 함수에서 종료일보다 시작일을 먼저 입력하면 어떻게 되나요?
DAYS 함수에서 종료일보다 시작일을 먼저 입력하면 음수 값이 반환됩니다.
예를 들어, `=DAYS(“2021-02-01”, “2021-03-15”)`는 42일이 나오지만, `=DAYS(“2021-03-15”, “2021-02-01”)`은 -42일이 됩니다.
따라서 날짜 순서를 정확하게 입력하는 것이 중요합니다.
NETWORKDAYS 함수에서 공휴일 목록을 어떻게 지정하나요?
NETWORKDAYS 함수에서 `[holidays]` 인수를 사용하여 공휴일 목록을 지정할 수 있습니다.
이 목록은 별도의 셀 범위로 지정하거나, 직접 날짜를 쉼표로 구분하여 입력할 수 있습니다.
예를 들어, `=NETWORKDAYS(“2024-02-01”, “2024-02-15”, {“2024-02-05”, “2024-02-12”})`와 같이 입력하여 해당 날짜들을 공휴일로 지정할 수 있습니다.
DATEDIF 함수에서 “MD” 단위 사용 시 주의할 점은 무엇인가요?
DATEDIF 함수의 “MD” 단위는 월과 연도를 제외한 일수 차이를 계산하는데, 특정 날짜 조합에서 예상치 못한 결과가 나올 수 있는 버그가 보고된 바 있습니다.
따라서 “MD” 단위를 사용하여 일수를 계산했을 때는 결과값을 다른 방법으로 검증해보는 것이 좋습니다.