엑셀에서 날짜로 정리된 데이터 범위에서 요일별로 날짜를 세려면 어떻게 하면 될까요?
날짜 범위에서 요일별 일수 계산은 SUMPRODUCT 함수와 WEEKDAY 함수를 사용해서 쉽게 계산할 수 있습니다.
이전에 작성한 글 중에서 요일별 숫자 값을 합산하는 방법에 대해 설명한 적이 있습니다.
▶ 엑셀 Excel 날짜 데이터에서 요일별 합계를 구하는 방법(요일별 값 합산)
이번에 설명한 내용은 날짜에 대한 요일별 날짜 수(일수)를 구하는 방법입니다.
지금부터 Excel 엑셀의 날짜 범위에서 요일별 날짜 수를 세는 방법(요일별 일수 계산)에 대해 설명해 보겠습니다.
엑셀 요일별 날짜 세기(요일별 일수 계산)
방법을 설명하기에 앞서 SUMPRODUCT 함수와 WEEKDAY 함수에 대해 먼저 이해할 필요가 있습니다.
- SUMPRODUCT 함수는 배열 또는 범위의 대응되는 값끼리 곱해서 그 합을 구하는 함수입니다.
- WEEKDAY 함수는 일정 날짜의 요일을 나타내는 1에서 7까지의 수를 구하는 함수입니다.
엑셀에서 날짜의 요일을 가져오는 5가지 방법과 요일을 활용하는 다양한 방법 포스팅 글과 아래 도움이 될 만한 다른 포스팅 글 소개 부분을 먼저 읽어 보시기 바랍니다.
1. 날짜에서 요일을 구하고 그렇게 구해진 요일의 일수를 계산하는 수식은 다음과 같습니다.
- 수식 : =SUMPRODUCT(–(WEEKDAY($A$2:$A$14,2)=E2))
- A열(A2:A14)이 날짜 데이터가 있는 열 범위입니다.
각 요일에 대해 Count를 계산하기 위해 절대 참조로 열을 지정하였습니다. $A$2:$A$14 - E열에 요일을 나타내는 1부터 7까지 수를 표시하였습니다.
2. 월요일(F2 셀)이 계산되는 과정을 설명해 보겠습니다.
- WEEKDAY(A2:A14,2)에 의해서 배열 {3;4;2;2;1;2;6;1;3;7;1;5}가 반환됩니다.
- WEEKDAY에서 반환된 숫자를 E2의 값인 1과 비교합니다.
- {3;4;2;2;1;2;6;1;3;7;1;5} = 1
- 비교 결과는 {FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE}가 됩니다.
- SUMPRODUCT 함수는 숫자만 지원하므로 Boolean 값인 TRUE/FALSE를 이중 부정(—)을 사용하여 1과 0으로 변환해서 합산합니다.
- SUMPRODUCT({0;0;0;0;1;0;0;1;0;0;1;0})의 합산 결과는 3이 됩니다.

3. WEEKDAY 함수에서 결과 값 유형을 결정하는 Return type에 따라 1에서 7까지 요일을 나타내는 수가 달라지게 됩니다.
예제에서는 Return type을 “2”로 사용하였습니다.
- 1 : 숫자 1(일요일)에서 시작해서 7(토요일)까지 요일을 나타냅니다.
- 2 : 숫자 1(월요일)에서 시작해서 7(일요일)까지 요일을 나타냅니다.
- 3 : 숫자 0(월요일)에서 시작해서 6(일요일)까지 요일을 나타냅니다.
3. A열의 날짜에 대한 요일의 숫자를 구한 것이 B열 입니다. 이해를 돕기 위해 B열을 추가해 놓았습니다.

마무리
이상으로 엑셀의 날짜 데이터에서 요일별 일수를 계산하는 방법에 대해 알아보았습니다.
날짜 범위 데이터에서 요일별 분포를 나타낼 때 여기에서 설명한 방법을 참고해서 일수를 구하고, 구해진 일수를 사용해서 요일별 분포를 표시할 수 있습니다.
※ 함께 읽으면 도움이 될 만한 다른 포스팅 글입니다.
♥ 이 글이 도움이 되었기를 바랍니다. ^-^
댓글로 흔적을 남겨 주세요.