엑셀에서 2가지 조건에 맞는 값을 가져오는 방법을 찾고 있나요? 예를들어 특정 제품번호와 판매날짜에 모두 해당되는 단가를 찾아 와야 하는 경우, INDEX, MATCH 함수를 같이 사용해서 조건에 맞는 데이터를 쉽고 빠르게 가져올 수 있습니다. 어떻게 하는지 지금 바로 아래에서 확인해 보세요.
엑셀 2가지 조건에 맞는 값 가져오기
< 영상 설명 >
< 그림 설명 >
- 이 글에선 배열 수식을 사용합니다.
- 따라서 엑셀 365 이상 버전, 엑셀 2021 이상 버전이라면 ENTER 을 누르면 되고, 이전 버전이라면 Ctrl + Shift + Enter 을 누르면 됩니다.
- 따라서 엑셀 365 이상 버전, 엑셀 2021 이상 버전이라면 ENTER 을 누르면 되고, 이전 버전이라면 Ctrl + Shift + Enter 을 누르면 됩니다.
지금 바로 아래에서 2가지 조건에 맞는 값을 가져오는 방법을 알아 보겠습니다.
아래 데이터에서 ‘판매날짜’ 가 ‘2025.3.1’ 이면서 ‘제품번호’ 가 ‘B1’ 인 제품의 ‘단가’ 를 찾아와 보겠습니다. 아래와 같이 수식을 입력합니다.
=INDEX(E3:E6,MATCH(1,(D3:D6=B10)*(B3:B6=C10)),0) → 5000

그럼 5000 이라는 값이 찾아와 집니다.
그렇다면 어떻게 함수식이 작동되는 걸까요?
아래 사진을 봅시다. MATCH 함수가 먼저 작동 되는데요. MATCH 함수는 첫 번째 인수에 입력한 값이 두 번째 인수에 입력한 범위 중 몇 번째 행에 위치하고 있는지 알려주는 함수입니다.(여기선 1이 범위 중 몇 번째에 위치하고 있는지 찾을 겁니다.)

우리는 MATCH 함수를 통해 2가지 조건을 모두 충족하는 값의 위치를 찾을 겁니다.
- 조건1: 판매날짜가 2025.3.1
- 조건2: 제품번호가 B1
첫 번째 조건에서 아래와 같이 함수식이 작동합니다. ‘판매날짜’ 범위 중 ‘2025.3.1’ 을 찾은 경우 TRUE 로 표시할 거고요. ‘2025.3.1’ 이 아닌 경우 FALSE 로 표시 할 겁니다. ‘2025.3.1’은 범위 중 2번째 행에 입력되어 있습니다.

엑셀에서는 FALSE 를 0, TRUE 를 1로 표시 하니까 아래와 같이 될 것입니다.

두 번째 조건도 똑같은 방식으로 작동합니다. ‘제품번호’ 범위 중 ‘B1’ 은 두 번째, 네 번째 행에 적혀 있죠?

따라서 두 번째, 네 번째 행에 1이 입력됩니다.

그리고 함수식에서 판매날짜(조건1)와 제품번호(조건2) 를 곱하기 했으므로 실제로 곱해보면 아래와 같이 결과값이 나옵니다. 곱하면 두 번째 행만 1이 나오죠?

MATCH 함수는 범위 중 ‘1’ 이라는 값을 찾는 것이 임무 입니다. 따라서 함수식은 아래와 같이 정리될 수 있습니다. MATCH 함수가 찾은 1은 2번째 행에 있었으므로 INDEX 함수 내 두 번째 인수는 2 로 바뀌는 겁니다.
=INDEX(E3:E6,MATCH(1,(D3:D6=B10)*(B3:B6=C10)),0) → =INDEX(E3:E6,2,0) → 5000

INDEX 함수는 범위 내에서 몇 번째에 위치한 값을 찾아주는 함수입니다. ‘단가’ 열의 두 번째에 위치한 값은 5,000 이죠? 따라서 5,000 이라는 값을 찾아올 수 있게 됩니다.
< 추천글 >
