들어가기
엑셀의 NETWORKDAYS.INTL 함수는 작업 기간에서 주말(토/일요일, 임의 지정 주말)이나 휴무일을 뺀 작업일수를 구해줍니다. 이 함수의 weekend 인수를 활용하면 토,일요일 뿐만 아니라 다른 요일을 주말로 설정하여 작업일수를 구할 수 있습니다.
NETWORKDAYS.INTL 함수의 기본 사용법은 다음 링크를 참고하세요.
[NETWORKDAYS.INTL 함수]
NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])
- start_date : 시작일
- end_date : 종료일
- [weekend] : 토요일/일요일 이외의 날짜도 주말로 설정 가능
(1-토/일요일, 2-일/월요일… 또는 7자리 문자열) - [holidays] : 작업일 계산에서 제외할 날짜를 지정, 셀범위 또는 날짜의 배열상수를 선택할 수 있음
세번째 인수 weekend는 다음과 같이 숫자로 입력하면 미리 지정된 요일이 주말로 설정됩니다.
=NETWORKDAYS.INTL(시작일,종료일,3) -> 세 번째 인수가 3이면 월/화요일이 주말로 설정됨
세 번째 인수를 숫자가 아니라 '1010100'과 같이 0, 1 조합의 7자리 문자열이면 토,일요일뿐만 아니라 다른 요일도 임의로 주말로 설정하고 작업일 계산 시 제외할 수 있습니다.
=NETWORKDAYS.INTL(시작일,종료일,"0101011")
0은 평일, 1은 주말이므로 "0101011"은 월/수/금요일은 평일, 나머지 요일은 주말로 설정됩니다.
케이스별 작업일수 계산
다음과 같이 세 번째 인수 weekend를 7자리 문자열로 지정하여 CASE 별 작업 일수 계산에 응용해 보겠습니다.
제조 현장 등에서 특정 요일만 작업을 한다고 했을 때 일정 기간 동안의 작업일수가 얼마나 되는지 확인할 때 유용합니다.
[M4] 셀에 다음 수식을 입력합니다.=NETWORKDAYS.INTL(K4,L4,J4,$B$11:$B$14)
- [K4] - 시작일
- [L4] - 종료일
- [J4] - Weekend 인수
- [$B$11:$B$14] - 휴무일 범위
위 수식은 2022년 9월 1일부터 9월 30일 기간 동안 월,수,금요일은 작업하고 화,목,토,일요일은 휴무일로 하되, [$B$11:$B$14] 범위에 입력된 휴무일(추석연휴 및 대체 공유일)을 제외한 작업 일수 11일(아래 달력에서 초록색으로 표시된 날짜)을 구해줍니다.
※ 9,10,11,12는 추석 연휴 및 대체 공휴일
위 수식의 세 번째 weekend 인수는 다음과 같이 구합니다.
=IF(C4>"","0","1")&IF(D4>"","0","1")&IF(E4>"","0","1")&IF(F4>"","0","1")&IF(G4>"","0","1")&IF(H4>"","0","1")&IF(I4>"","0","1")
요일별로 값이 입력되어 있으면(작업일-평일) 0을 반환하고, 입력된 값이 없으면(주말) 1을 반환하도록 하여 "0101011"과 같은 문자열을 만듭니다.
관련 글
마지막 수식 IF함수의 첫 번째 인수 C4>"" 부분이 무슨 의미인지 이해가 잘 안 됩니다.
수식에서 "A"는 값이 A라는 뜻이고 ""는 따옴표 사이에 아무것도 없으므로 '공백'이라는 뜻이므로
C4>""는 C4 셀에 입력된 값이 '공백보다 크면'(즉, 값이 입력되어 있으면)이라는 뜻입니다.
위 그림을 보면 C4 셀에 "작업"이라는 값이 입력되어 있으므로 IF(C4>"","0","1")는 "0"을 반환합니다.