조건을 두 개 걸어야 할 순간, COUNTIF 수식이 갑자기 막힌다. 엑셀 COUNTIF와 COUNTIFS의 차이점은 단 하나 — COUNTIF는 조건 하나만, COUNTIFS는 AND로 연결된 여러 조건을 동시에 처리한다는 것이다. 범위·조건 쌍을 얼마나 추가할 수 있느냐가 실무에서 두 함수를 가르는 기준이고, 이 차이를 정확히 모르면 잘못된 집계를 보고서에 올리게 된다.
COUNTIF 수식이 막히는 순간
팀별 실적 데이터에서 “영업팀이면서 달성률이 100% 이상인 직원 수”를 세야 한다고 해보자. COUNTIF 하나로는 이 작업이 불가능하다.
COUNTIF의 구문은 단순하다.
=COUNTIF(범위, 조건)
범위 하나, 조건 하나가 전부다. “A열에서 서울인 셀 개수”, “B열에서 100 이상인 숫자 개수”처럼 단일 기준만 필요하면 COUNTIF로 충분하다. 문제는 조건이 두 개 이상 쌓이는 순간이다. 많은 사람이 이 지점에서 COUNTIF 두 개를 뺄셈·곱셈으로 억지로 조합하거나 보조 열을 추가해 우회한다. 그 모든 편법이 COUNTIFS 하나로 대체된다.
COUNTIFS의 구조 — 범위·조건 쌍을 늘리는 방식
COUNTIFS는 Excel 2007에서 처음 추가됐다. 구문은 범위·조건 쌍을 원하는 만큼 이어 붙이는 형태다.
=COUNTIFS(범위1, 조건1, 범위2, 조건2, …)
최대 127쌍까지 지정할 수 있다. 앞서 든 예시로 돌아가면 이렇게 쓴다.
=COUNTIFS(B2:B100,"영업팀",C2:C100,">=100")
B열에서 ‘영업팀’이고 동시에 C열에서 100 이상인 행만 카운트한다. 핵심은 모든 조건이 AND로 연결된다는 점이다. 조건 중 하나라도 맞지 않으면 그 행은 제외된다.
조건이 하나뿐이라면 굳이 COUNTIFS로 바꿀 이유는 없다. COUNTIF가 타이핑도 짧고 가독성도 낫다. 반면 조건이 두 개 이상으로 늘어날 가능성이 있다면 처음부터 COUNTIFS로 설계하는 쪽이 수식 유지보수에 유리하다.
두 함수 비교 — 결정적 차이 한눈에
| 항목 | COUNTIF | COUNTIFS |
|---|---|---|
| 처리 가능한 조건 수 | 1개 | 최대 127쌍 |
| 조건 연결 방식 | 단일 | AND (전체 동시 충족) |
| 기본 구문 | =COUNTIF(범위, 조건) | =COUNTIFS(범위1, 조건1, 범위2, 조건2, …) |
| 엑셀 도입 시점 | Excel 2000 이전 | Excel 2007 |
| 와일드카드 지원 | 텍스트 조건에서 가능 | 텍스트 조건에서 가능 |
| OR 조건 직접 지원 | 불가 | 불가 |
표에서 눈여겨볼 항목은 마지막 줄이다. OR 조건은 두 함수 모두 직접 처리하지 못한다. 이 사실을 모르면 COUNTIFS를 써도 엉뚱한 숫자가 나온다.
OR 조건은 두 함수 모두 못 한다 — 가장 흔한 오해
실무에서 가장 많이 발생하는 오류 유형이다. =COUNTIFS(A:A,"서울",A:A,"부산")을 쓰면 서울 또는 부산인 셀이 카운트될 것이라고 기대하는 경우가 많다. 이 수식의 실제 반환값은 0이다. A열에서 서울이면서 동시에 부산인 셀은 존재하지 않기 때문이다.
OR 조건을 처리하는 방법은 두 가지다.
- 단순 합산:
=COUNTIF(A:A,"서울")+COUNTIF(A:A,"부산")— 한 셀에 두 값이 동시에 존재할 수 없을 때 유효하다. 직관적이고 계산 속도도 빠르다. - SUMPRODUCT 배열:
=SUMPRODUCT(((A2:A100="서울")+(A2:A100="부산"))>0)— 중복 없이 OR 조건을 처리한다. 조건이 여러 개로 늘어날 때도 수식 길이를 비교적 짧게 유지할 수 있다.
다만 SUMPRODUCT는 수만 행 이상의 대용량 데이터에서 계산 속도가 느려질 수 있다. 범위를 전체 열(A:A)이 아니라 실제 데이터가 있는 행 범위(A2:A5000)로 좁히면 속도 저하를 크게 줄일 수 있다.
#VALUE! 오류와 날짜 조건 실전 해결법
범위 크기 불일치 — #VALUE! 오류의 주원인
COUNTIFS를 쓸 때 모든 범위 쌍의 행(또는 열) 크기는 반드시 동일해야 한다. B2:B100과 C2:C101처럼 한 행이라도 어긋나면 #VALUE! 오류가 발생한다. 수식을 복사한 뒤 범위 한쪽만 잘못 수정했을 때 가장 자주 나타난다.
해결책은 간단하다. 절대참조($)로 범위를 고정하면 수식을 복사해도 범위가 틀어지지 않는다. $B$2:$B$100 형태로 고정하고 복사 후 범위 크기를 다시 한번 확인하는 습관이 오류를 원천 차단한다.
날짜 조건을 텍스트로 입력하면 안 되는 이유
날짜를 "2024-01-01"처럼 문자열로 조건에 입력하면 엑셀의 지역·언어 설정에 따라 날짜로 인식되지 않을 수 있다. 특히 여러 사람이 서로 다른 날짜 형식 설정으로 같은 파일을 쓰는 환경에서 문제가 된다.
안전한 방법은 DATE 함수와 & 연산자를 결합하는 것이다.
=COUNTIFS(A:A,">="&DATE(2024,1,1),A:A,"<="&DATE(2024,12,31))
이 방식은 어느 환경에서도 일관된 결과를 보장한다. DATE 함수는 지역 설정과 무관하게 날짜 일련번호로 직접 변환되기 때문이다.
정리: 상황별 선택 기준
두 함수의 차이점은 조건 개수 하나지만, 그 하나가 실무 보고서 전체를 바꾼다.
- 조건 1개 → COUNTIF
- AND로 연결된 조건 2개 이상 → COUNTIFS
- OR로 연결된 조건 → COUNTIF 합산 또는 SUMPRODUCT
- 날짜 범위 조건 → COUNTIFS + DATE 함수 조합
- #VALUE! 오류 → 범위 크기 일치 확인 후 절대참조 적용
두 함수 모두 OR 조건을 직접 지원하지 않는다는 점은 입문 단계에서 잘 안내되지 않는 함정이다. 이 사실을 알고 나면 COUNTIFS를 잘못 조합해 발생하는 집계 오류를 피할 수 있다. COUNTIF에서 막히는 순간이 곧 COUNTIFS로 넘어갈 신호다. 조건 개수에 따라 함수를 선택하고, OR가 필요할 때는 별도 수식으로 처리한다 — 이 두 규칙만 기억해도 실무 집계 오류의 대부분을 예방할 수 있다.
자주 묻는 질문
COUNTIF와 COUNTIFS는 조건이 하나일 때 결과가 같나요?
네, 조건이 하나라면 두 함수는 동일한 결과를 반환합니다. 단, 조건이 하나뿐인 상황에서는 수식이 더 짧고 가독성이 좋은 COUNTIF를 유지하는 편이 낫습니다.
COUNTIFS에서 OR 조건을 적용하려면 어떻게 해야 하나요?
COUNTIFS는 AND만 지원합니다. OR 조건이 필요하면 조건별로 COUNTIF를 각각 구성한 뒤 결과를 더하거나, SUMPRODUCT와 논리 배열을 활용하는 방식을 씁니다.
COUNTIFS에서 #VALUE! 오류가 발생하는 이유는?
가장 흔한 원인은 범위 쌍의 행 또는 열 크기가 다를 때입니다. 예를 들어 B2:B100과 C2:C101처럼 크기가 맞지 않으면 오류가 납니다. 수식 복사 전 절대참조($)를 사용하면 예방할 수 있습니다.
날짜 범위를 COUNTIFS 조건으로 쓸 때 주의할 점은?
날짜를 텍스트 문자열로 입력하면 지역 설정에 따라 인식되지 않을 수 있습니다. DATE 함수와 & 연산자를 결합한 방식(예: >="&DATE(2024,1,1))이 어느 환경에서나 안정적으로 작동합니다.
와일드카드를 COUNTIF와 COUNTIFS에서 사용할 수 있나요?
텍스트 조건에서는 *(0개 이상 임의 문자)와 ?(임의 한 글자)를 모두 쓸 수 있습니다. 단, 숫자나 날짜 조건에는 와일드카드가 적용되지 않습니다.