본문 바로가기
엑셀공부

엑셀 FILTER함수를 사용하여 데이터 분류 하는 방법

by 곰탱이생각 2025. 3. 12.
반응형

📌 이럴 때 쓰는 FILTER 함수! 조건별 데이터 추출 완벽 정리

엑셀에서 데이터를 다루다 보면 특정 조건에 맞는 데이터만 필터링해서 가져오고 싶을 때가 있습니다.
이럴 때 가장 강력한 함수가 바로 FILTER 함수입니다!

 

기존에는 자동 필터나 고급 필터를 사용했지만, FILTER 함수는 실시간으로 데이터를 자동 필터링하며,
변경된 값에도 즉시 반응하기 때문에 엑셀 365 및 2019 이후 버전에서 필수적인 함수라고 할 수 있습니다.

이번 글에서는 FILTER 함수의 기본 사용법부터, 여러 개의 조건 적용, 와일드카드 활용 방법까지
다양한 예제와 함께 실무에서 활용할 수 있도록 알려드리겠습니다.


✅ FILTER 함수란? 언제 사용해야 할까?

FILTER 함수는 특정 조건을 만족하는 데이터만 걸러서 가져오는 함수입니다.
📌 필요한 상황 예시

  • 특정 카테고리의 제품 목록만 보고 싶을 때
  • 매출이 일정 금액 이상인 데이터만 추출할 때
  • 날짜 범위 안에 속하는 데이터만 가져오고 싶을 때
  • 여러 조건을 동시에 적용하여 데이터를 필터링할 때

✅ FILTER vs. VLOOKUP vs. HLOOKUP vs. XLOOKUP 비교

함수 설명 검색방향 다중 결과 반환 여러
조건 적용
와일드카드
VLOOKUP 세로 방향(열)에서 값을 찾아 반환 수직(↓)
(하나의 값만 반환)
✔ (*, ?)
HLOOKUP 가로 방향(행)에서 값을 찾아 반환 수평(→)
(하나의 값만 반환)
✔ (*, ?)
XLOOKUP VLOOKUP + HLOOKUP의 업그레이드 버전 자유롭게
가능

(하나의 값만 반환)
FILTER 조건을 만족하는 모든 데이터를 반환 자유롭게
가능

(여러 값 반환 가능)
❌ (SEARCH 함수 활용 가능)
반응형

🔹 FILTER 함수 기본 사용법

📌 기본 공식

=FILTER(범위, 조건, [조건에 맞는 값이 없을 때 반환할 값])

  • 범위 : 필터링할 데이터 범위
  • 조건 : 필터링 기준이 되는 조건
  • [조건에 맞는 값이 없을 때 반환할 값] (선택 사항) : 조건에 맞는 값이 없을 경우 표시할 값

🔹 FILTER 함수 기본 예제

📌 예제 1: 특정 카테고리의 데이터만 필터링

아래와 같은 데이터가 있을 때,
"과일" 카테고리에 해당하는 제품만 필터링하려면?

제품명 카테고리 가격
사과 과일 1,000
바나나 과일 2,000
당근 채소 1,500
감자 채소 2,200
오렌지 과일 3,000
=FILTER(A2:C6, B2:B6="과일", "데이터 없음")

 

💡 결과:

제품명 카테고리 가격
사과 과일 1,000
바나나 과일 2,000
오렌지 과일 3,000

👉 "과일" 카테고리에 해당하는 데이터만 출력됨!
👉 만약 "과일" 데이터가 없으면 "데이터 없음"이 표시됨


🔹 FILTER 함수에서 여러 개의 조건 사용하기

📌 예제 2: 두 개 이상의 조건을 적용하는 방법

조건을 두 개 이상 적용하고 싶다면 곱셈(*) 또는 덧셈(+) 연산자를 사용하면 됩니다.

=FILTER(A2:C6, (B2:B6="과일") * (C2:C6>=2000), "데이터 없음")

💡 설명:

  • B2:B6="과일" → 과일 카테고리 선택
  • C2:C6>=2000 → 가격이 2000 이상인 데이터 선택
  • 두 조건이 모두 만족할 경우 *(곱셈) 연산을 사용
  • 조건에 맞는 데이터가 없을 경우 "데이터 없음" 표시

💡 결과:

제품명 카테고리 가격
바나나 과일 2,000
오렌지 과일 3,000

👉 "과일" 중에서 가격이 2000 이상인 제품만 출력됨!


🔹 FILTER 함수에서 와일드카드(Wildcard) 사용하기

기본적으로 FILTER 함수는 직접적인 와일드카드를 지원하지 않습니다.
하지만 SEARCH 함수를 활용하면 부분 검색을 할 수 있습니다!

📌 예제 3: 제품명이 "사"가 포함된 데이터만 필터링

=FILTER(A2:C6, ISNUMBER(SEARCH("사", A2:A6)), "데이터 없음")

💡 설명:

  • SEARCH("사", A2:A6) → 제품명에서 "사"가 포함된 위치 찾기
  • ISNUMBER(...) → 검색 결과가 숫자인 경우(즉, 검색어가 포함된 경우) TRUE 반환
  • 해당 조건을 만족하는 데이터만 필터링

💡 결과:

제품명 카테고리 가격
사과 과일 1,000

 

👉 제품명에 "사"가 포함된 데이터만 필터링됨!


🔹 절대값을 활용한 FILTER 함수 예제

📌 예제 4: 가장 가까운 값을 가진 데이터 필터링

데이터에서 특정 숫자(예: 2000)에 가장 가까운 값을 찾고 싶다면?

=FILTER(A2:C6, ABS(C2:C6 - 2000) = MIN(ABS(C2:C6 - 2000)), "데이터 없음")

💡 설명:

  • ABS(C2:C6 - 2000) → 가격에서 2000과의 차이를 절대값으로 계산
  • MIN(ABS(C2:C6 - 2000)) → 가장 가까운 값 찾기
  • FILTER를 사용해 해당 조건을 만족하는 데이터만 필터링

💡 결과:

제품명 카테고리 가격
바나나 과일 2,000

👉 2000과 가장 가까운 가격을 가진 제품이 필터링됨!


🔍 FILTER 함수가 VLOOKUP, XLOOKUP보다 강력한 이유

1. VLOOKUP은 하나의 값만 반환, FILTER는 여러 값 반환 가능

  • VLOOKUP은 첫 번째 일치하는 값 하나만 반환하지만,
  • FILTER는 여러 개의 값을 한 번에 반환 가능

 

📌 예제: "과일" 카테고리만 찾기

=FILTER(A2:C6, B2:B6="과일", "데이터 없음")

👉 여러 개의 과일 데이터를 한 번에 반환!

반면, VLOOKUP은 첫 번째 "과일" 데이터(예: 사과)만 반환


 2. FILTER는 여러 조건을 쉽게 적용 가능

  • VLOOKUP, HLOOKUP, XLOOKUP은 기본적으로 하나의 조건만 사용
  • FILTER는 여러 개의 조건을 조합하여 복잡한 검색 가능

📌 예제: "과일"이면서 가격이 2000 이상인 데이터 찾기

=FILTER(A2:C6, (B2:B6="과일") * (C2:C6>=2000), "데이터 없음")

👉 조건을 여러 개 결합 가능!
👉 XLOOKUP은 단일 값을 찾을 때는 강력하지만, 다중 값을 반환하지 못함


3. XLOOKUP이 FILTER보다 나은 점도 있음!

  • XLOOKUP은 단일 값 검색에서 강력함
  • 필요한 값이 없을 때 기본값을 설정하는 기능이 더 직관적
  • FILTER는 데이터가 많아질수록 속도가 느려질 수 있음

📌 예제: "바나나"의 가격을 찾기 (XLOOKUP 사용)

=XLOOKUP("바나나", A2:A6, C2:C6, "찾을 수 없음")

 

👉 FILTER는 여러 개의 값을 반환할 때 유리하지만, 특정 값을 찾을 때는 XLOOKUP이 더 직관적

🔥 마무리: FILTER 함수를 활용하면 데이터 관리가 쉬워진다!

FILTER 함수는 기본적인 데이터 필터링부터, 여러 개의 조건 적용, 와일드카드 활용, 절대값을 이용한 검색까지
실무에서 활용도가 매우 높은 함수입니다.

 

언제 어떤 함수를 써야 할까?

원하는 작업 추천 함수
 단일 값 찾기 (VLOOKUP을 대체)  XLOOKUP
 특정 조건에 맞는 여러 값 찾기  FILTER
 가장 가까운 값 찾기  XLOOKUP + ABS 또는 INDEX + MATCH
 가로 또는 세로 방향으로 값 찾기  XLOOKUP (HLOOKUP/VLOOKUP보다 강력함)
 여러 조건을 적용한 데이터 검색  FILTER

📌 한 줄 요약:

  • XLOOKUP은 단일 값을 찾을 때 유리
  • FILTER는 여러 개의 데이터를 조건에 맞게 추출할 때 강력
  • VLOOKUP, HLOOKUP은 XLOOKUP이나 FILTER로 대체 가능

📌 정리하자면:
✅ 특정 조건에 맞는 데이터만 자동 필터링
✅ 여러 개의 조건을 조합하여 세밀한 검색 가능
✅ SEARCH와 결합하면 부분 검색(와일드카드)도 가능
✅ 절대값을 활용해 가장 가까운 값 찾기도 가능

👉 엑셀에서 FILTER 함수를 적극 활용해보세요! 🚀

728x90
반응형
LIST