Loading...

카테고리 없음 / / 2024. 3. 4. 12:47

FILTER 함수

1.FILTER 함수 정의 란?

FILTER 함수는 특정 조건을 만족하는 행만을 선택적으로 반환하는 엑셀 함수입니다. 이 함수를 사용하면 데이터 범위에서 특정 조건을 충족하는 행만을 가져와 원하는 결과를 얻을 수 있습니다. FILTER 함수는 동적 배열 함수로, Office 365 및 Excel 2021에서 사용할 수 있습니다.

구문:

excelCopy code
FILTER(array, include, [if_empty])
  • array: 필터링할 데이터 범위 또는 배열입니다.
  • include: 포함 조건을 지정하는 배열 또는 조건입니다.
  • [if_empty]: 선택 사항으로, 필터링된 결과가 비어있을 때 반환할 값을 지정합니다.

예시:

excelCopy code
=FILTER(A2:B10, B2:B10="Complete")

이 예시에서는 B 열에서 "Complete"인 행만을 포함하여 A 열과 B 열의 데이터를 필터링합니다.

참고 사항:

  • FILTER 함수는 동적 배열을 반환하므로 결과가 행이나 열로 확장될 수 있습니다.
  • 필터링된 결과가 비어있을 경우 [if_empty] 매개변수를 사용하여 사용자가 정의한 값을 반환할 수 있습니다.
  • Office 365 또는 Excel 2021 이상에서만 사용 가능합니다. Excel 2019 이하 버전에서는 지원되지 않습니다.
 
 
 
 

2.예시

가정하는 데이터셋:

cssCopy code
| A | B | |--------|----------| | Name | Status | | Alice | Complete | | Bob | Pending | | Carol | Complete | | Dave | Pending | | Eve | Complete |
  1. 특정 조건을 만족하는 행 필터링:
    • "Status" 열이 "Complete"인 행만을 필터링합니다.
    excelCopy code
    =FILTER(A2:B6, B2:B6="Complete")
    결과:
  2. cssCopy code
    | A | B | |--------|----------| | Name | Status | | Alice | Complete | | Carol | Complete | | Eve | Complete |
  3. 여러 조건을 결합하여 필터링:
    • "Status" 열이 "Complete"이고 "Name" 열이 "Alice"인 행만을 필터링합니다.
    excelCopy code
    =FILTER(A2:B6, (B2:B6="Complete")*(A2:A6="Alice"))
    결과:
  4. cssCopy code
    | A | B | |--------|----------| | Name | Status | | Alice | Complete |
  5. 조건에 맞지 않는 경우 대체값 지정:
    • "Status" 열이 "Pending"인 행을 필터링하되, 조건에 맞는 결과가 없을 경우 "Not Found"를 반환합니다.
    excelCopy code
    =FILTER(A2:B6, B2:B6="Pending", "Not Found")
    결과:
  6. cssCopy code
    | A | B | |--------|----------| | Not Found |

이러한 예시에서 사용된 FILTER 함수는 특정 조건을 만족하는 행을 동적으로 선택하여 반환합니다.

 
 
 
 

3.사용방법

FILTER 함수는 특정 조건을 만족하는 행만을 선택적으로 반환하는 엑셀 함수로, 동적 배열을 다루는 데 유용합니다. 아래는 FILTER 함수의 기본적인 사용 방법과 예시입니다.

구문:

excelCopy code
=FILTER(array, include, [if_empty])
  • array: 필터링할 데이터 범위 또는 배열입니다.
  • include: 포함 조건을 지정하는 배열 또는 조건입니다.
  • [if_empty]: 선택 사항으로, 필터링된 결과가 비어있을 때 반환할 값을 지정합니다.

사용 예시:

가정하는 데이터셋:

cssCopy code
| A | B | |--------|----------| | Name | Status | | Alice | Complete | | Bob | Pending | | Carol | Complete | | Dave | Pending | | Eve | Complete |
  1. 특정 조건을 만족하는 행 필터링:
    • "Status" 열이 "Complete"인 행만을 필터링합니다.
    excelCopy code
    =FILTER(A2:B6, B2:B6="Complete")
    결과:
  2. cssCopy code
    | A | B | |--------|----------| | Name | Status | | Alice | Complete | | Carol | Complete | | Eve | Complete |
  3. 여러 조건을 결합하여 필터링:
    • "Status" 열이 "Complete"이
 
 

4.함수 사용팁

  1. 기본 사용:
    • array: 필터링할 데이터 범위 또는 배열입니다.
    • include: 포함 조건을 지정하는 배열 또는 조건입니다.
    • [if_empty]: 선택 사항으로, 필터링된 결과가 비어있을 때 반환할 값을 지정합니다.
  2. excelCopy code
    =FILTER(array, include, [if_empty])
  3. 동적 배열 반환:
    • FILTER 함수는 동적 배열을 반환하므로 결과가 행이나 열로 확장될 수 있습니다.
  4. 여러 조건 결합:
    • 여러 조건을 결합하여 사용할 수 있습니다. 조건 간에는 *를 사용하여 논리 AND를 나타냅니다.
    excelCopy code
    =FILTER(array, (condition1)*(condition2))

사용팁:

  1. Office 365 이상에서 사용 가능:
    • FILTER 함수는 Office 365 및 Excel 2021부터 지원됩니다. 이전 버전에서는 사용할 수 없습니다.
  2. 동적 배열 이해:
    • FILTER 함수의 결과가 동적 배열인지 이해하고, 이에 따라 데이터를 활용하세요.
  3. 비어있는 결과 다루기:
    • 필터링된 결과가 비어있을 경우 [if_empty] 매개변수를 사용하여 사용자가 정의한 값을 반환할 수 있습니다.
    excelCopy code
    =FILTER(array, include, "Not Found")
  4. 조건문에 대소문자 구분:
    • FILTER 함수는 조건문에 대소문자를 구분합니다. 일치 조건을 설정할 때 주의하세요.
    excelCopy code
    =FILTER(array, B2:B6="Complete")
    이렇게 하면 "Complete"와 정확히 일치하는 경우만 필터링됩니다.
  5. 필터 조건에 변수 사용:
    • 필터 조건을 하드코딩하지 말고 변수를 사용하여 동적으로 조건을 설정할 수 있습니다.
    excelCopy code
    =FILTER(array, B2:B6=C1)
    여기서 C1에는 동적으로 변경될 조건이 들어갑니다.
  6. 다양한 데이터 타입 처리:
    • FILTER 함수는 다양한 데이터 타입에 대해 유연하게 작동합니다. 숫자, 텍스트, 날짜 등 모든 유형의 데이터에 대해 사용할 수 있습니다.

이러한 사용방법과 팁을 이용하여 FILTER 함수를 효과적으로 활용할 수 있습니다.

 
 
 
 

5.주의사항

  1. 버전 호환성:
    • FILTER 함수는 Office 365 및 Excel 2021부터 지원됩니다. 이전 버전에서는 사용할 수 없습니다. 사용하는 Excel 버전을 확인하고 호환성을 고려해야 합니다.
  2. 배열 크기 일치:
    • array 및 include 매개변수의 배열 크기는 일치해야 합니다. 크기가 일치하지 않으면 오류가 발생할 수 있습니다.
  3. 동적 배열 처리:
    • FILTER 함수는 동적 배열을 반환합니다. 따라서 결과를 다룰 때 배열의 크기가 동적으로 변할 수 있음을 고려해야 합니다.
  4. 다중 조건의 AND 연산:
    • 여러 조건을 결합할 때 조건 간에 AND 연산자인 *를 사용합니다. OR 연산자를 사용하려면 +를 사용하는 것이 아니라 SUM 함수 등을 활용해야 합니다.
    excelCopy code
    =FILTER(array, (condition1)*(condition2))
  5. 조건문 대소문자 구분:
    • FILTER 함수는 조건문에 대소문자를 구분합니다. 조건을 설정할 때 대소문자를 정확하게 일치시키도록 주의해야 합니다.
    excelCopy code
    =FILTER(array, B2:B6="Complete")
    이 경우 "Complete"와 정확히 일치하는 경우만 필터링됩니다.
  6. 비어있는 결과 처리:
    • 필터링된 결과가 비어있을 경우 [if_empty] 매개변수를 사용하여 사용자가 정의한 값을 반환할 수 있습니다.
    excelCopy code
    =FILTER(array, include, "Not Found")
    이렇게 하면 필터링된 결과가 비어 있는 경우 "Not Found"가 반환됩니다.
  7. 동일한 데이터 타입 사용:
    • array 및 include에 사용되는 데이터는 동일한 유형이어야 합니다. 예를 들어, 숫자와 텍스트가 혼합된 열에서 필터링하려면 주의가 필요합니다.

주의사항을 숙지하고 함수를 적절하게 활용하여 원하는 결과를 얻을 수 있도록 노력하세요.