특정 기간내 날짜를 세는 함수는 DATEDIF입니다. 함수 구조는 '=DATEDIF(시작일, 종료일, "옵션")'인데, 이 '옵션'이 중요한 부분으로, 크게 세가지입니다. Y는 년수, M은 개월수, D는 일수를 반환하게 됩니다. 그리고 옵션은 꼭 쌍따옴표(" ") 처리를 해줘야 함수가 작동을 한답니다! 그래서 아래와 같이 매월의 날짜를 세보았는데요. 아래의 '기간' 정보는 당연하게도 매월의 토요일과 일요일도 포함한 숫자입니다.
오늘의 엑셀 포스팅에서 메인으로 다룰 함수는 사실 이 함수가 아닙니다. NETWORKDAYS 함수를 다뤄보고자 하는데 이 함수는 DATEDIF 함수와는 달리 특정 기간 내에 토요일, 일요일, 공휴일을 제외한 날의 평일의 수만을 셉니다. 그래서 기간내 순수 작업 일수나 근무 일수를 구하는 경우에 필수로 활용되는 함수입니다. 일례로 매월 순수 작업 일수 또는 근무 일수를 구하는 것은 급여 산정하는 부분에 있어서 아주 중요한 작업일 것입니다.
순수 작업 일수 또는 순수 근무 일수에는 토요일, 일요일 뿐만 아니라 공휴일도 제외되어야하니, RANDBETWEEN 함수로 임의로 공휴일을 만들어 보도록 하겠습니다. RANDBETWEEN 함수의 구조는 '=RNADBETWEEN(수1, 수2)'이고, 지정한 두 숫자 사이에 난수를 발생 시킵니다.
아래의 첫 RANDBETWEEN 함수 구성의 의미는 0부터 3까지(둘을 포함합니다) 사이의 난수를 발생시켜서, 매월 공휴일의 일수를 0, 1, 2, 또는 3일이 되도록 특정하였고, 두번째의 RANDBETWEEN 함수는 매월 첫째날과 마지막날 사이의 난수를 발생시켜서, 매월 공휴일을 딱 하루씩 만들어 주었습니다.
그럼 이제 기간 내, 공휴일 수도 임의로 만들었으니, 이번 포스팅의 핵심인 특정 기간내 실제 근무 일수 또는 작업 일수를 확인할 수 있는 NETWORKDAYS 함수를 바로 활용해 봅시다. 함수 구성은 '=NETWORKDAYS(시작일, 종료일, 공휴일)'입니다.
'공휴일' 값은 옵션으로 함수 안에 특정 공휴일을 직접 입력해도 되는데, 그보다 일반적인 것은 별도로 공휴일의 목록을 표로 입력해두고, 해당 입력 범위를 지정해서 입력해주어도 됩니다. 저는 위에서 매월 공휴일의 일수를 임의로 난수로 만들었으니, 아래와 같이 단순하게 NETWORKDAYS 함수값에서 공휴일 숫자를 빼주는 방법을 택하겠습니다.
더불어 NETWORKDAYS와 사촌 형제쯤 되는 WORKDAY 함수도 함께 알아봅시다. 이 함수는 토요일, 일요일, 공휴일을 제외한 특정 작업 일수 또는 근무 일수 이후의 날짜를 구하는 함수입니다. 예를들어, 10일 이후의 작업 종료일을 구한다거나, 20일 근무 이후의 급여일을 구한다거나, 30일 이후의 수업 종류일을 구할 때 요긴한게 사용할 수 있는 함수입니다.
물론 이 10일, 20일, 30일 안에는 토요일, 일요일, 공휴일을 제외한 평일 수만을 의미하고 있습니다. WORKDAY 함수 구조는 '=WORKDAY(시작일, 기간, 옵션)'인데, 이 옵션 값에, 공휴일 값이 들어갑니다. NETWORKDAYS 함수와 마찬가지로 공휴일 같은 경우, 미리 공휴의일의 목록을 표로 입력을 해두고, 입력한 공휴일 범위를 지정해주면 됩니다. 아래에서는 시작일을 2월 5일로 두고, 7일 작업 또는 근무일 이후의 날짜를 반환해 보았습니다.
이렇게 특정 기간 내, 토요일, 일요일, 공휴일 제외한 순수 작업 일수 또는 근무 일수를 구하는 함수인 NETWORKDAYS나 특정 순수 작업일수 또는 근무 이후의 날짜를 찾는 WORKDAY 함수는 엑셀 실무에서 상당히 높은 빈도로 사용되는 함수들입니다. 함수의 구조 자체도 이해하기 어렵지 않으니, NETWORKDAYS와 WORKDAY 두 함수 모두 꼼꼼하게 익혀주시기 바랍니다!
'알면좋은이야기 > 엑셀' 카테고리의 다른 글
엑셀 배우기, COUNTIF/ SUMIF/ COUNTIFS/ AVERAGE 함수로 전체 평균 이상인 학생들의 평균 구하기! (0) | 2017.08.10 |
---|---|
엑셀 배우기, INDEX/ MATCH 함수 활용해서 시간표 짜기! (0) | 2017.08.08 |
엑셀 배우기, 이름정의와 INDIRECT/ VLOOKUP 함수 활용, 목록과 드롭다운 표시! (0) | 2017.08.07 |
엑셀 배우기, SUMIFS 함수로 월별/품목별 판매수량/매출액 구하기! (1) | 2017.08.06 |
엑셀 배우기, DATE/ EDATE/ RANDBETWEEN/ VLOOKUP 함수 활용 및 셀서식! (0) | 2017.08.06 |