엑셀 WEEKNUM 함수 사용법 및 공식 총정리
엑셀 WEEKNUM 함수 목차 바로가기
함수 요약
엑셀 WEEKNUM 함수는 특정 날짜의 주 번호를 반환하는 함수입니다.
함수 구문
=WEEKNUM(날짜, [반환옵션])
인수 알아보기
인수 | 설명 |
날짜 | 주 번호를 계산할 날짜입니다. |
반환옵션 [선택인수] |
주 번호 계산 방식입니다. 기본값은 일요일 시작이며, 아래 반환옵션에 따라 특정요일 시작 기준으로 주 번호를 계산할 수 있습니다. |
반환옵션 | 주 시작일 |
1 (기본값) | 일요일 |
2 | 월요일 |
11 | 월요일 |
12 | 화요일 |
13 | 수요일 |
14 | 목요일 |
15 | 금요일 |
16 | 토요일 |
17 | 일요일 |
21 | 월요일 (체계2) |
WEEKNUM 함수 상세설명
엑셀 WEEKNUM 함수는 특정 날짜의 주 번호를 반환하는 함수입니다. 한 해의 주번호는 1~54주 계산되며 윤달포함여부, 반환옵션에 따라 달라질 수 있습니다. WEEKNUM 함수에는 2가지 체계가 사용되며 세부내용은 아래와 같습니다.
- 체계1(기본, 반환옵션 1~17)
: 해당년도 1월 1일을 포함하는 주가 첫째주로 계산됩니다. - 체계2(반환옵션 21)
: 해당년도 첫번째 목요일을 포함하는 주가 첫째주로 계산됩니다. 이 체계는 ISO8601(유럽식 주 번호 매기기 체계) 에 따릅니다.
대부분의 상황에서는 체계1이 사용되므로 체계2가 있다는 정도로만 알고 넘어가도 무방합니다. WEEKNUM 함수의 반환옵션 기본값은 1이며, '일요일'을 한 주의 시작으로 계산합니다.
WEEKNUM 함수 사용법 간단예제
- 특정 날짜의 주 번호 반환하기
=WEEKNUM("2020-03-01")
=10 - 특정 주 번호를 만족하는 날짜의 개수 구하기
■ 주의사항 : WEEKNUM 함수는 인수로 범위를 입력시 #VALUE! 오류를 반환합니다.
따라서 WEEKNUM 함수를 배열로 사용하려면 WEEKNUM 함수 대신 아래 응용공식을 사용합니다.
=CEILING((날짜범위-DATE(YEAR(날짜범위),1,1)+WEEKDAY(DATE(YEAR(날짜범위),1,1), 1 ))/7,1)'날짜범위 : {"2020-01-01","2020-01-03","2020-01-05","2020-01-09"}
=SUMPRODUCT(--(CEILING((날짜범위-DATE(YEAR(날짜범위),1,1)+WEEKDAY(DATE(YEAR(날짜범위),1,1), 1 ))/7,1)=2))
=SUMPRODUCT(--({1,1,2,2}=2))
=SUMPRODUCT(--{FALSE,FALSE,TRUE,TRUE})
=0+0+1+1
=2
호환성
운영체제 | 호환성 |
Windows 버전 | 모든 엑셀 버전에서 사용 가능합니다. |
Mac 버전 | 모든 엑셀 버전에서 사용 가능합니다. |
예제파일 다운로드
오빠두엑셀의 강의 예제파일은 여러분을 위해 자유롭게 제공하고 있습니다.
- [엑셀함수] 엑셀 WEEKNUM 함수 사용법예제파일
관련 기초함수
그 외 참고사항
- 날짜가 1900년 1월 1일 이전이거나 날짜로 인식할 수 없는 텍스트일 경우 WEEKNUM 함수는 #VALUE! 오류를 반환합니다.
- 위 표에 명시된 값 이외에 반환옵션이 입력될 경우 WEEKNUM 함수는 #NUM! 오류를 반환합니다.
- WEEKNUM 함수의 날짜로 '범위'가 입력되면 #VALUE! 오류를 반환합니다. 따라서 WEEKNUM 함수를 사용한 배열수식을 이용할 경우 아래 응용공식을 이용합니다.
자주묻는질문
1. 질문1. WEEKNUM 함수를 배열수식으로 이용하려면 어떻게 해야 하나요?
WEEKNUM 함수의 날짜 인수로 범위가 입력되면 #VALUE! 오류가 반환됩니다. 따라서 WEEKNUM 함수를 배열수식으로 이용하려면 아래 응용공식을 이용합니다.
=CEILING((날짜범위-DATE(YEAR(날짜범위),1,1)+WEEKDAY(DATE(YEAR(날짜범위),1,1), 1 ))/7,1)