엑셀 토요일 포함 평일계산 완벽한 7가지 방법과 NETWORKDAYS 함수 활용법

엑셀 토요일 포함 평일계산 완벽한 7가지 방법과 NETWORKDAYS 함수 활용법
엑셀 토요일 포함 평일계산 완벽한 7가지 방법과 NETWORKDAYS 함수 활용법

엑셀에서 두 날짜 사이의 평일 수를 계산할 때 토요일을 포함해야 하는 경우가 있습니다. 기본 NETWORKDAYS 함수는 토요일과 일요일을 모두 제외하므로, 토요일을 근무일로 포함하고 일요일만 제외하는 특별한 계산법이 필요합니다. 이 글에서는 토요일을 포함한 평일 계산의 다양한 방법과 실무에서 바로 적용할 수 있는 수식들을 자세히 알아보겠습니다.

NETWORKDAYS 함수의 기본 원리와 한계점

NETWORKDAYS 함수는 엑셀에서 평일 계산을 위한 기본 함수로, 두 날짜 사이의 근무일 수를 자동으로 계산합니다. 하지만 이 함수의 기본 설정은 토요일과 일요일을 모두 주말로 간주하여 제외합니다. 예를 들어 =NETWORKDAYS(시작일, 종료일)로 사용하면 월요일부터 금요일까지만 근무일로 계산됩니다. 이러한 한계로 인해 토요일을 근무일로 포함해야 하는 업무환경에서는 NETWORKDAYS.INTL 함수나 사용자 정의 수식을 활용해야 합니다.

SUMPRODUCT 함수를 활용한 토요일 포함 계산법

토요일을 포함하고 일요일만 제외하는 가장 효과적인 방법은 SUMPRODUCT와 TEXT 함수를 조합하는 것입니다. =SUMPRODUCT(–(TEXT(ROW(INDIRECT(B1&”:”&B2)),”dddd”)<>“Sunday”)) 수식을 사용하면 두 날짜 사이의 모든 날짜 중에서 일요일만 제외한 날짜 수를 계산할 수 있습니다. 이 수식은 B1과 B2 셀에 각각 시작일과 종료일이 입력되어 있을 때 사용하며, MM/DD/YYYY나 DD/MM/YYYY 형식의 날짜에서 정확하게 작동합니다. INDIRECT 함수가 날짜 범위를 생성하고, TEXT 함수가 각 날짜의 요일을 확인하여 일요일이 아닌 날짜만 카운트합니다.

  • SUMPRODUCT 함수는 배열 수식 없이도 여러 조건을 동시에 처리할 수 있어 계산 속도가 빠릅니다
  • TEXT 함수의 “dddd” 형식 코드는 요일명을 전체 문자열로 반환하여 정확한 일요일 식별이 가능합니다
  • ROW와 INDIRECT 함수 조합으로 두 날짜 사이의 모든 날짜를 순차적으로 생성합니다
  • 이중 음수 연산자(–)를 통해 TRUE/FALSE 값을 1/0으로 변환하여 숫자 계산을 수행합니다

NETWORKDAYS.INTL 함수를 이용한 맞춤형 주말 설정

엑셀 2010 이상 버전에서는 NETWORKDAYS.INTL 함수를 사용하여 맞춤형 주말 설정이 가능합니다. =NETWORKDAYS.INTL(B1,B2,11,B3:C3) 수식에서 세 번째 매개변수인 11은 일요일만 주말로 설정하는 코드입니다. 네 번째 매개변수는 공휴일 범위로, 해당 날짜들도 근무일에서 제외됩니다.

매개변수 코드 주말 설정 설명
1 (기본값) 토요일, 일요일 일반적인 주말 설정
11 일요일만 토요일 포함 계산에 사용
12 월요일만 특수한 근무 형태
17 금요일, 토요일 중동 지역 주말 설정

공휴일을 고려한 고급 계산 방법

실무에서는 토요일을 포함하면서도 공휴일은 제외해야 하는 경우가 많습니다. 이를 위해 배열 수식 =SUMPRODUCT(–(TEXT(ROW(INDIRECT(B1&”:”&B2)),”dddd”)<>“Sunday”))-SUMPRODUCT(–IF((B3:C3>=B1)*(B3:C3<=B2),(TEXT(B3:C3,"dddd")<>“Sunday”), FALSE))를 사용합니다. 이 수식은 먼저 일요일을 제외한 전체 날짜 수를 계산한 후, 지정된 공휴일 중에서 일요일이 아닌 날짜들을 차감합니다. B3:C3 범위에는 제외할 공휴일들이 입력되어 있어야 하며, 엑셀 버전에 관계없이 안정적으로 작동합니다.

공휴일 제외 계산에서 주의할 점은 날짜 형식의 일관성입니다. 시작일, 종료일, 공휴일 모두 동일한 날짜 형식으로 입력해야 정확한 계산이 가능합니다. 또한 공휴일 범위를 확장할 때는 수식에서 해당 범위를 정확히 수정해야 합니다.

실무 활용 시나리오와 최적화 팁

토요일 포함 평일 계산은 다양한 업무 상황에서 활용됩니다. 제조업체의 생산 계획, 소매업의 영업일 계산, 프로젝트 관리에서의 작업일 산정 등이 대표적입니다. 특히 한국의 많은 기업들이 토요일을 격주 또는 월 2회 근무일로 운영하는 경우가 많아 이러한 계산법의 중요성이 높습니다. 성능 최적화를 위해서는 가능한 한 NETWORKDAYS.INTL 함수를 우선 사용하고, 복잡한 조건이 필요한 경우에만 SUMPRODUCT 조합 수식을 사용하는 것이 좋습니다.

대용량 데이터를 처리할 때는 수식의 계산 범위를 최소화하고, 가능하면 보조 열을 활용하여 복잡한 수식을 단계별로 나누어 처리하는 것이 효율적입니다. 또한 결과값을 복사하여 값으로 붙여넣기를 통해 재계산 부하를 줄일 수 있습니다.

일반적인 오류 해결과 문제 해결법

토요일 포함 평일 계산에서 자주 발생하는 오류들과 해결 방법을 알아보겠습니다. #VALUE 오류는 주로 날짜 형식이 잘못되었거나 텍스트로 인식되는 날짜 때문에 발생합니다. 이 경우 DATEVALUE 함수를 사용하여 텍스트를 날짜로 변환하거나, 셀 서식을 날짜 형식으로 변경해야 합니다. #NUM 오류는 시작일이 종료일보다 늦은 경우에 나타나므로, 날짜 순서를 확인하고 필요시 MIN, MAX 함수를 활용하여 자동으로 순서를 조정할 수 있습니다.

INDIRECT 함수 사용 시 메모리 부족으로 인한 계산 지연이 발생할 수 있습니다. 이는 날짜 범위가 매우 클 때 나타나는 현상으로, 이런 경우에는 월별 또는 분기별로 나누어 계산하는 것이 효과적입니다. 또한 엑셀의 계산 설정을 수동으로 변경하여 불필요한 재계산을 방지할 수 있습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤