엑셀 COUNTIF·COUNTIFS 완전 가이드 — 와일드카드·다중조건·날짜범위·중복 개수·고유 수

엑셀 COUNTIF·COUNTIFS — 와일드카드·다중조건·날짜범위·고유 수 계산, 실물에 가까운 꽁이가 노트북을 가리키는 썸네일
엑셀 COUNTIF·COUNTIFS 완전 가이드 — 와일드카드·다중조건·날짜범위·중복 개수·고유 수

엑셀 COUNTIF·COUNTIFS 완전 가이드 — 와일드카드·다중조건·날짜범위·중복 개수·고유 수

환경: Excel 365 기준. 초안 정리에 AI 도구를 보조적으로 활용했지만, 모든 수식은 직접 재현하여 검증했습니다.

1) 치트시트(기본 문법)

// COUNTIF(range, criteria)
=COUNTIF(A2:A100, "*blue*")      // 'blue' 포함

// COUNTIFS(range1, criteria1, range2, criteria2, ...)
=COUNTIFS(Category,"=Fruit", Region,"Seoul", Qty, ">=10")

TIP 비교 연산자( >= 등)는 문자열로 입력하고, 셀과 결합할 때는 ">="&B1 처럼 &로 연결합니다.

2) 와일드카드(부분일치) 8가지

=COUNTIF(A2:A,"*서울*")                // '서울' 포함
=COUNTIF(A2:A,"서울*")                 // '서울'로 시작
=COUNTIF(A2:A,"*구")                   // '구'로 끝
=COUNTIF(A2:A,"A?C")                   // A_ C (한 글자)
=COUNTIF(A2:A,"*~**")                  // 별표 자체(escape: ~)
=COUNTIF(A2:A,"*?*?*")                 // 길이 ≥2
=COUNTIF(A2:A,"<>")                   // 빈 셀이 아닌 개수
=COUNTIF(A2:A,"<>*취소*")            // '취소'를 포함하지 않는

3) COUNTIFS 다중조건 10가지(복붙용)

// ① 카테고리=Fruit & 지역=Seoul
=COUNTIFS(Tbl[Category],"Fruit", Tbl[Region],"Seoul")

// ② 금액 10만~50만
=COUNTIFS(Tbl[Amount], ">="&100000, Tbl[Amount], "<="&500000)

// ③ 텍스트 포함 + 수량 조건
=COUNTIFS(Tbl[Item], "*사과*", Tbl[Qty], ">="&10)

// ④ 특정 월(2025-08)
=COUNTIFS(Tbl[Date], ">="&DATE(2025,8,1), Tbl[Date], "<"&DATE(2025,9,1))

// ⑤ 공백/비공백
=COUNTIFS(Tbl[Phone], "")              // 빈 셀
=COUNTIFS(Tbl[Phone], "<>")         // 값 있음

// ⑥ 대소문자 구분 필요한 경우(FIND와 함께)
=SUMPRODUCT(--ISNUMBER(FIND("ABC", Tbl[Code])))

// ⑦ 토요일·일요일 제외(주중만)
=COUNTIFS(Tbl[Date], ">="&B1, Tbl[Date], "<="&C1, Tbl[Date], "<>","", WEEKDAY(Tbl[Date],2), "<=5")

// ⑧ 오류 제외
=COUNTIFS(Tbl[Result], "<>#N/A")

// ⑨ 여러 키워드 중 하나라도 포함(OR)
=SUM(COUNTIF(Tbl[Item], {"*사과*","*배*","*포도*"}))

// ⑩ AND+OR 혼합
=SUM(COUNTIFS(Tbl[Region],"Seoul", Tbl[Item], {"*사과*","*배*"}))

4) 날짜·시간 범위 6가지

// ① 오늘
=COUNTIFS(Tbl[Date], TODAY())

// ② 지난 7일
=COUNTIFS(Tbl[Date], ">="&TODAY()-7, Tbl[Date], "<="&TODAY())

// ③ 월별(셀의 월과 같은)
=COUNTIFS(Tbl[Date], ">="&EOMONTH(B1,-1)+1, Tbl[Date], "<="&EOMONTH(B1,0))

// ④ 시간대(09:00~18:00)
=COUNTIFS(Tbl[Time], ">="&TIME(9,0,0), Tbl[Time], "<="&TIME(18,0,0))

// ⑤ 주말만
=COUNTIFS(WEEKDAY(Tbl[Date],2),">=6")

// ⑥ 분기(Q3)
=COUNTIFS(Tbl[Date], ">="&DATE(2025,7,1), Tbl[Date], "<"&DATE(2025,10,1))

5) 중복 개수 & 고유 수 4가지

// ① 값별 개수 표(피벗 없이)
=LET(u, UNIQUE(Tbl[Item]), HSTACK(u, BYROW(u, LAMBDA(x, COUNTIF(Tbl[Item], x)))))

// ② '2번 이상' 등장한 값 개수
=COUNTIF(COUNTIF(Tbl[Item], Tbl[Item]), ">=2")

// ③ 고유 값 개수
=ROWS(UNIQUE(Tbl[Item]))

// ④ 조건부 고유 개수(지역=Seoul)
=ROWS(UNIQUE(FILTER(Tbl[Item], Tbl[Region]="Seoul")))

6) 오류·성능 체크리스트

  • 숫자/문자 혼합 → --값 또는 VALUE()로 정규화
  • 날짜 텍스트 → DATEVALUE로 변환
  • 대량 데이터 → 표(Table) + 열 범위 최소화, 필요한 경우 Power Query로 전처리
  • 와일드카드 포함 문자 자체를 찾을 때 → ~*, ~?로 이스케이프
  • IFERROR로 사용자 친화 메시지 제공: =IFERROR(수식,"없음")

Leave a Reply

Your email address will not be published. Required fields are marked *