본문 바로가기
카테고리 없음

match함수를 사용하는 이유

by ¶&§★○§ 2021. 11. 27.
728x90
반응형
SMALL

match함수를 사용하는 이유

 

함수 식을 사용하다 보면 느끼는 거지만, match함수만 별도로 사용하는 경우를 본 적이 있는가?

아마도 거의 본적이 없을 것이다.

그렇다면 match함수는 어떤 함수일까?

간단히 정의하자면 match함수는 찾고자하는 데이터 값이, 지정된 범위의 행 또는 열의 몇 번째 위치해 있는지를 알려주는 함수이다.

 

이렇게 원하는 데이터의 위치 값을 알려주는 함수를 match함수라고 한다.

 

그런데 우리는 도대체 데이터의 위치를 알아서 어디다 쓰려가 하는 것일까?

match함수는 그자체로 독립적으로 사용할 일이 거의 없다.

 

match함수는 index함수와 만났을 때 엄청난 시너지를 발휘한다.

 

그렇기 때문에 우리가 최종적으로는 지향할 바는 index함수와 match함수를 결합해서 사용하는 방법을 익혀야 한다. 

따라서 우리가 match함수를 알아야 하는 이유는 index함수와 결합했을 때 어떤 방식으로 결합시켜야 할지를 숙지하기 위해서 우선 match함수 사용법부터 정확히 알고 있어야 되는 것이다.  

 

<목차>

1. match함수의 사용방법

2. match함수의 실제 적용


1. match함수의 사용방법

match함수의 사용방법은 아래와 같다. 

“=match(lookup_value, lookup_array, match_type” 이렇게 인수를 입력하면 된다.

 

match함수에 사용되는 인수를 하나하나 해석해 보면

 

  (1) lookup_value의 의미

lookup_value는 찾으려고 하는 데이터를 나타낸다.

아래의 그림을 예로 든다면, “호박이 참고자료 속에 동일한 항목이 있는지를 찾아야 하는데 이때 우리가 찾으려고 하는 값, "호박"이라는 단어가 lookup_value 값이 되는 것이다. 

lookup_value값이 무엇인지
lookup_value값이 무엇인지

그렇다면 다음 인수인 lookup_array는 무엇을 의미할까?

 

(2) lookup_array의 의미

앞에 lookup_value와 일치하는 단어가 있어서 짐작을 할 수 있을 텐데, array가 범위를 나타내는 만큼

결국 lookup_array는 앞서 일치하는 단어가 있는지 찾으려고 입력했던 단어 "호박"이라는 데이터가 있을 것 같은 데이터의 범위, 위의 그림을 기준으로 설명하자면, 물품의 종류인 A2부터 A4까지의 범위를 말한다.

 

정리하자면 lookup_array는 lookup_value값이 있을 것 같아 검색해보고 싶은 데이터 범위를 말한다.

그림으로 따지면 아래의 범위를 말하는 것이다.

lookup_array의 범위
lookup_array의 범위

 (3) match_type의 의미

마지막으로 설명할 인수는match_type이다. 단어를 보면 짐작할 수 있겠지만, match_type은 lookup_value값을 lookup_array의 범위에서 어떠한 타입, 즉 어느 정도의 정확도로 찾을 것인지를 설정해주는 인수이다. 

 

match_type 옵션은 총 3가지가 있는데

1lookup_value값보다 작거나 같은 값중 가장 큰 값을 찾고,

0lookup_value값과 정확히 일치하는 값을 찾고,

-1lookup_value값보다 크거나 같은 값 중 작은 값을 찾는다.

2. match함수의 실제 적용

그렇다면 아래의 그림을 바탕으로 "호박"과 일치되는 단어가 물품 종류 열의 몇 번째 행에 위치해 있는지 찾고자 할 때 수식을 어떻게 입력을 해야 할까?

예제 문제
예제 문제

위의 그림과 같이 A8셀에 일치여부를 알고 싶은 물품의 종류 즉 "호박"을 입력하게 되는 데 입력되는 match함수의 수식은 다음과 같다. 

“=match(”호박“,A2:A4,0)”

A8셀에 match함수식을 입력하기
A8셀에 match함수식을 입력하기

위의 함수 식을 해석해 보자면 A2셀에서 A4셀까지의 범위 내에서 “호박”과 일치하는 단어가 몇 번째에 위치해 있는지 정확히 찾아라. 정도로 해석할 수 있겠다.

 

이와 같이 입력하게 되면 A8셀에는 어떤 값이 뜨게 될까? 답은 1이다. 

match함수 입력후 결과값
match함수 입력후 결과값

숫자 1을 해석하면 다음과 같다. "호박"과 일치하는 값이 lookup_array의 1번째 행에 존재한다는 것이다. 

 

위의 예는 물품의 종류 열 즉 1열의 범위 안에서 내가 일치 여부를 확인하고 싶은 데이터가 몇 번째 행에 위치해 있는지 알고자 할 때 사용하는 방법에 대해 설명한 것이고,

 

응용해서 만일 호박의 3500원에 판매되었던 월을 알고 싶다면,

아래와 같이 입력하면 된다.

"=match(3500,B2:D4,0)"

B8셀에 match함수 입력하기
B8셀에 match함수 입력하기

지금까지 match함수를 사용하는 방법에 대해 알아보았다. 이제 정말로 다음 시간에는 

match함수와 index함수가 만나서 어떻게 시너지를 만들어 내는지 알아보도록 하겠다. 

728x90
반응형
LIST

댓글