오늘은 엑셀에서 같은 값(중복·고유 값)의 개수를 손쉽게 집계하는 네 가지 핵심 방법(COUNTIF, COUNTIFS, UNIQUE+COUNTA, 고급 필터)을 예시‧주의 사항과 함께 정리해 보았습니다.
1. 한 가지 조건일 때 가장 빠른 방법: COUNTIF
=COUNTIF(범위, 조건)
- COUNTIF는 지정한 범위 안에서 조건과 일치하는 셀 개수를 바로 돌려준다.
- 예) A2:A10에서 “Apple”의 빈도를 알고 싶다면
=COUNTIF(A2:A10,"Apple").
TIP
- 문자 대신 셀 참조를 쓰면 조건을 쉽게 변경할 수 있다.
">0"·"<>""같이 비교 연산자를 넣으면 숫자·공백 조건도 처리 가능하다.
2. 조건이 두 개 이상이라면: COUNTIFS
=COUNTIFS(범위1, 조건1, 범위2, 조건2 …)
- 두 가지 이상 조건을 동시에 만족하는 행만 세고 싶을 때 사용한다.
예) B열이 “서울”이고 C열 금액이 100만 원 이상인 거래 건수 →=COUNTIFS($B:$B,"서울",$C:$C,">=1000000").
주의
- 각 범위의 행 개수는 반드시 동일해야 오류가 없다.
- 날짜 조건은
"2025-09-23"처럼 값 전체를 문자열로 입력하거나 셀 참조를 권장.
3. 엑셀 365 이상이라면 더욱 간단: UNIQUE + COUNTA
=COUNTA(UNIQUE(범위))
- UNIQUE는 범위 안의 고유 값을 동적 배열로 반환한다.
- 결과 배열을 COUNTA로 감싸면 고유 값 개수를 바로 얻는다.
예) 판매 ID 고유 개수 →=COUNTA(UNIQUE(A2:A1000)).
고급 옵션
=UNIQUE(array, , TRUE)로 한 번만 등장한 값만 남기면 “단독 출현” 건수를 계산할 수 있다.
4. 함수 대신 메뉴로 처리: 데이터 탭 → 고급 필터
- 데이터 범위를 선택 → [데이터] 탭 → 고급.
- ‘고유 기록만’ 체크 후 다른 위치에 복사.
- 복사된 목록 옆 셀에
=ROWS(목록범위)사용 → 고유 값 건수 완료.
장점
- 수식이 익숙하지 않은 사용자도 빠르게 결과 확보.
단점 - 원본 데이터가 바뀌면 다시 필터를 돌려야 한다는 점에서 동적 연결은 부족.
5. 자주 받는 질문 & 실전 팁
- 첫 번째 발생을 빼고 중복 횟수만 세고 싶다면?
=COUNTIF($A$2:A2,A2)>1로 True/False 플래그를 만든 뒤, 해당 열에서 “TRUE” 개수를 다시 COUNTIF로 집계한다. - 대소문자까지 구분해 세려면?
배열 수식=SUM(--EXACT(범위, 조건셀))을 쓰면 “Apple”과 “APPLE”을 별도로 계산할 수 있다. - 피벗 테이블이 더 편한 경우
“행 레이블”에 분석 대상 열을 넣고 “값” 영역 집계 방식을 “개수”로 바꾸면 항목별 빈도표가 즉시 완성(일반 팁). - 버전 호환성
UNIQUE는 엑셀 365/2021에서만 지원된다. 과거 버전에서는 고급 필터나 피벗, 수식 조합으로 대체해야 한다.
정리하자면 실무 데이터는 언제든 변동된다. COUNTIF/COUNTIFS로 조건별 빈도를 빠르게 파악하고, UNIQUE나 피벗 테이블로 고유 건수를 동적으로 관리하면 엑셀 데이터 품질과 업무 속도가 모두 올라간다.