엑셀에서 COUNTIFS 함수를 이용하면 여러 개의 조건을 만족하는 셀의 개수를 구할 수 있는데, 월의 첫째날보다 크거나 같고 말일보다 작거나 같은 조건을 추가하면 조건을 만족하는 월별 셀의 개수를 구할 수 있습니다.
※ COUNTIFS 함수 기본 사용법은 다음 링크를 참고하세요.
[ 엑셀 COUNTIFS 함수 – 여러 조건을 만족하는 셀의 개수 구하기 ]
다음과 같이 교육 참석 현황 자료가 있다고 할 때 월별 참석자 수를 구해보겠습니다.
1) 월별 교육참석자수 구하기
[D25] 셀에 다음 수식을 입력합니다.=COUNTIFS($C$5:$C$21,">="&DATE(B25,C25,1),$C$5:$C$21,"<="&EOMONTH(DATE(B25,C25,1),0))
[D25] 셀에 참석자수 7이 구해집니다. [D25] 셀의 수식을 복사해서 [D26] 셀에 붙여 넣으면 최종적으로 다음과 같이 결과가 표시됩니다.※ 위에서 복사한 수식은 교육 참석 현황 자료를 절대참조 방식으로 참조하므로 수식을 그대로 붙여 넣어도 밀리지 않고 제대로 참조합니다.
절대참조에 대해서는 다음 링크를 참고하세요.
[ 엑셀 상대참조/절대참조/혼합참조 ]
위 수식이 어떻게 작동되었는지 다음 그림을 보고 이해해 보겠습니다.
정리해 보면 위 수식은 다음의 순서로 실행됩니다.
- 교육참석현황의 교육일자가 ( criteria_range1, $C$5:$C$21 )
7월1일보다 크거나 같고 ( criteria1,">="&DATE(B25,C25,1) ) - 교육참석현황의 교육일자가 ( criteria_range2, $C$5:$C$21 )
7월31일보다 작거나 같은 ( criteria2, "<="&EOMONTH(DATE(B25,C25,1),0)) 것의
개수 7을 가져옵니다.
월별로 개수를 가져오기 위해서는 '해당 월의 1일보다 크거나 같고 월말보다 작거나 같도록 조건을 설정'해야 하는데 위 수식에서 날짜를 지정하는 방법을 좀 더 살펴보겠습니다.
- ">="&DATE(B25,C25,1) : >=는 크거나 같음을 의미하고 정확한 날짜값이 필요하므로 셀에 입력된 값을 참조하여 DATE함수로 날짜를 만듭니다. &는 >=과 뒤의 날짜를 연결해서 하나의 문자열로 만들어 주는 역할을 합니다.
- "<="&EOMONTH(DATE(B25,C25,1),0) : <=는 작거나 같음을 의미하고 월말에 해당하는 날짜값이 필요하므로 셀에 입력된 값을 참조하여 DATE함수로 날짜를 만든 후 EOMONTH함수로 월말에 해당하는 날짜를 만듭니다.
※ DATE함수, EOMONTH함수 사용법
2) 월별,부서별 교육 참석자수 구하기
이번에는 월별 조건에 추가하여 부서별 교육 참석자 수를 구해보겠습니다.
[E30] 셀에 다음 수식을 입력합니다.=COUNTIFS($C$5:$C$21,">="&DATE(B30,C30,1),$C$5:$C$21,"<="&EOMONTH(DATE(B30,C30,1),0),$D$5:$D$21,D30)
[E30] 셀에 참석자수 2가 구해집니다. [E30] 셀의 수식을 복사해서 [E31] 셀부터 [E35] 셀까지 붙여 넣으면 최종적으로 다음과 같이 결과가 표시됩니다.수식을 살펴보면 첫 번째 예 '월별 교육참석자수 구하기'와 수식이 동일하고 마지막에 '참석부서' 조건만 추가되었습니다.
=COUNTIFS($C$5:$C$21,">="&DATE(B30,C30,1),$C$5:$C$21,"<="&EOMONTH(DATE(B30,C30,1),0),$D$5:$D$21,D30)
- 교육참석현황의 교육일자가 ( criteria_range1, $C$5:$C$21 )
7월1일보다 크거나 같고 ( criteria1, ">="&DATE(B25,C25,1) ) - 교육참석현황의 교육일자가 ( criteria_range2, $C$5:$C$21 )
7월31일보다 작거나 같고 ( criteria2, "<="&EOMONTH(DATE(B25,C25,1),0) ) - 참석부서가 ( criteria_range3, $D$5:$D$21 )
"인사팀"인 ( criteria3, D30 ) 것의
개수 2를 가져옵니다.
관련 글
좋은 정보 감사합니다.
도움 많이 되었습니다!
많은 도움 되었습니다. 감사합니다!!
도움이 많이 되었습니다.
추가로 다른시트에 있는 내용을 가져와서 카운트가 가능할까요?
예로 첫번째시트에 23년도 내용이지만 세부내용에 24년도에 작업한내용을
두번째 시트에 카운트가 가능할까요? 답변 부탁드립니다.
다른 시트를 참조해서 계산하는 것은 다음 링크 참고하시면 됩니다.
https://xlworks.net/excel-formula-other-sheet-reference/
수식은 모두 동일하고 다만 다른 시트를 선택하는 부분만 추가된다고 생각하시면 됩니다.
도움이 많이 되었습니다.
궁금한게, 새로운 교육이 생겨서 '성희롱 예방교육' 위에 추가를 하면 함수를 다 바꿔줘야 하나요??
'성희롱 예방교육' 위에 추가하면 참조 범위가 이전 그대로 이므로 수식에서 참조범위를 바꿔주어야 합니다.
단, 중간에 행을 삽입(5행 아래부터)하면 수식을 바꾸지 않아도 됩니다.