2차원 조회를 위한 Excel의 INDEX MATCH MATCH

  • 이 공유
Michael Brown

이 튜토리얼에서는 Excel에서 2차원 조회를 수행하는 몇 가지 다른 수식을 보여줍니다. 대안을 살펴보고 마음에 드는 것을 선택하세요 :)

Excel 스프레드시트에서 무언가를 검색할 때 대부분의 경우 열에서 세로로, 행에서 가로로 찾습니다. 그러나 경우에 따라 행과 열을 모두 살펴봐야 합니다. 즉, 특정 행과 열의 교차점에서 값을 찾는 것을 목표로 합니다. 이것을 매트릭스 조회 ( 2차원 또는 2방향 조회 라고도 함)라고 하며 이 자습서에서는 4가지 방법을 보여줍니다.

    Excel INDEX MATCH MATCH 수식

    Excel에서 양방향 조회를 수행하는 가장 일반적인 방법은 INDEX MATCH MATCH를 사용하는 것입니다. 이는 행과 열 번호를 모두 가져오기 위해 하나 이상의 MATCH 함수를 추가하는 고전적인 INDEX MATCH 수식의 변형입니다.

    INDEX ( data_array, MATCH ( vlookup_value, lookup_column_range, 0), MATCH ( hlookup value, lookup_row_range, 0))

    예를 들어 모집단을 가져오는 수식을 만들어 봅시다. 아래 표에서 주어진 연도에 특정 동물의 우선 모든 인수를 정의합니다.

    • Data_array - B2:E4(데이터 셀, 행 및 열 머리글 제외)
    • Vlookup_value - H1(대상 동물)
    • Lookup_column_range - A2:A4(행 헤더: 동물 이름) -A3:A4
    • Hlookup_value - H2(대상 연도)
    • Lookup_row_range - B1:E1(열 헤더: 연도)

    모든 인수를 합치면 양방향 조회를 위한 다음 공식을 얻을 수 있습니다.

    =INDEX(B2:E4, MATCH(H1, A2:A4, 0), MATCH(H2, B1:E1, 0))

    이 공식 작동 방식

    조금 보일 수 있지만 언뜻 보기에는 복잡하지만 수식의 논리는 정말 간단하고 이해하기 쉽습니다. INDEX 함수는 행 및 열 번호를 기준으로 데이터 배열에서 값을 검색하고 두 개의 MATCH 함수가 해당 숫자를 제공합니다.

    INDEX(B2:E4, row_num, column_num)

    여기서 MATCH(lookup_value, lookup_array, [match_type]) lookup_array 에서 lookup_value 상대 위치 를 반환합니다.

    따라서 행 번호를 얻기 위해 검색합니다. 행 헤더(A2:A4)에서 관심 있는 동물(H1):

    MATCH(H1, A2:A4, 0)

    열 번호를 얻기 위해 열 헤더에서 대상 연도(H2)를 검색합니다. (B1:E1):

    MATCH(H2, B1:E1, 0)

    두 경우 모두 세 번째 인수를 0으로 설정하여 정확한 일치를 찾습니다.

    이 예에서 첫 번째 MATCH는 다음을 반환합니다. 2 우리의 vlookup 값(북극곰)이 A2:A4의 두 번째 셀인 A3에서 발견되기 때문입니다. 두 번째 MATCH는 hlookup 값(2000)이 B1:E1의 세 번째 셀인 D1에서 발견되기 때문에 3을 반환합니다.

    위에서 수식은 다음과 같이 줄어듭니다. 3>

    그리고 데이터 배열 B2:E4의 두 번째 행과 세 번째 열의 교차점에 있는 값을 반환합니다.D3 셀의 값.

    양방향 조회를 위한 VLOOKUP 및 MATCH 수식

    Excel에서 2차원 조회를 수행하는 또 다른 방법은 VLOOKUP 및 MATCH 함수의 조합을 사용하는 것입니다.

    VLOOKUP( vlookup_value , table_array , MATCH( hlookup_value , lookup_row_range , 0), FALSE)

    샘플 테이블의 경우 , 수식의 모양은 다음과 같습니다.

    =VLOOKUP(H1, A2:E4, MATCH(H2, A1:E1, 0), FALSE)

    여기서:

    • Table_array - A2:E4(행 머리글을 포함한 데이터 셀)
    • Vlookup_value - H1(대상 동물)
    • Hlookup_value - H2(대상 연도)
    • Lookup_row_range - A1:E1(열 헤더: 연도)

    이 수식 작동 방식

    수식의 핵심은 정확히 일치하도록 구성된 VLOOKUP 함수입니다(마지막 인수 FALSE로 설정), 테이블 배열(A2:E4)의 첫 번째 열에서 조회 값(H1)을 검색하고 같은 행의 다른 열에서 값을 반환합니다. 값을 반환할 열을 결정하려면 정확히 일치하도록 구성된 MATCH 함수(마지막 인수는 0으로 설정됨)를 사용합니다.

    MATCH(H2, A1:E1, 0)

    MATCH는 다음에서 값을 검색합니다. 열 머리글(A1:E1)에서 H2를 검색하고 찾은 셀의 상대 위치를 반환합니다. 우리의 경우 대상 연도(2010)는 조회 배열에서 5번째인 E1에서 찾을 수 있습니다. 따라서 숫자 5는 VLOOKUP의 col_index_num 인수로 이동합니다.A2의 조회 값과 정확히 일치하고 같은 행의 5번째 열인 E2 셀의 값을 반환합니다.

    중요 참고 사항! 수식이 올바르게 작동하려면 VLOOKUP의 table_array (A2:E4)와 MATCH(A1:E1)의 lookup_array 가 같은 수의 열을 가져야 합니다. 그렇지 않으면 MATCH에서 전달한 수입니다. col_index_num 에 대한 값은 올바르지 않습니다( table_array 의 열 위치에 해당하지 않음).

    행과 열을 찾는 XLOOKUP 함수

    최근 Microsoft는 VLOOKUP, HLOOKUP 및 INDEX MATCH와 같은 기존 조회 기능을 모두 대체하기 위한 기능을 Excel에 하나 더 도입했습니다. 무엇보다도 XLOOKUP은 특정 행과 열의 교차점을 볼 수 있습니다.

    XLOOKUP( vlookup_value , vlookup_column_range , XLOOKUP( hlookup_value , hlookup_row_range , data_array ))

    샘플 데이터 세트의 공식은 다음과 같습니다.

    =XLOOKUP(H1, A2:A4, XLOOKUP(H2, B1:E1, B2:E4))

    참고. 현재 XLOOKUP은 Office Insiders 프로그램에 속한 Office 365 구독자만 사용할 수 있는 베타 기능입니다.

    이 공식의 작동 방식

    이 공식은 XLOOKUP의 기능을 사용하여 전체 행 또는 열. 내부 함수는 헤더 행에서 대상 연도를 검색하고 해당 연도(이 예에서는 1980년)에 대한 모든 값을 반환합니다. 이러한 값은 외부의 return_array 인수로 이동합니다.XLOOKUP:

    XLOOKUP(H1, A2:A4, {22000;25000;700}))

    외부 XLOOKUP 함수는 열 헤더에서 대상 동물을 검색하고 return_array에서 같은 위치에 있는 값을 반환합니다.

    2개의 SUMPRODUCT 공식 -way lookup

    SUMPRODUCT 함수는 Excel의 스위스 칼과 같습니다. 특히 여러 기준을 평가할 때 지정된 목적을 넘어 많은 작업을 수행할 수 있습니다.

    두 가지를 조회하려면 기준은 행과 열에서 다음 일반 공식을 사용합니다.

    SUMPRODUCT( vlookup_column_range = vlookup_value ) * ( hlookup_row_range = hlookup_value ), data_array )

    데이터세트에서 양방향 조회를 수행하기 위해 수식은 다음과 같습니다.

    =SUMPRODUCT((A2:A4=H1) * (B1:E1=H2), B2:E4)

    아래 구문도 작동합니다.

    =SUMPRODUCT((A2:A4=H1) * (B1:E1=H2) * B2:E4)

    이 수식이 작동하는 방식

    수식의 핵심은 행 및 열 머리글에 대해 두 조회 값을 비교합니다(H1의 대상 동물과 모든 동물에 대해 B1:E1의 모든 연도에 대한 A2:A4의 이름 및 H2의 대상 연도):

    (A2:A4=H1) * (B1:E1=H2)

    이 res TRUE 및 FALSE 값의 2개 배열에서 ults. 여기서 TRUE는 일치 항목을 나타냅니다.

    {FALSE;FALSE;TRUE} * {FALSE,TRUE,FALSE,FALSE}

    곱셈 연산은 TRUE 및 FALSE 값을 1과 0으로 강제 변환하고 4의 2차원 배열을 생성합니다. 열 및 3개 행(행은 세미콜론으로 구분되고 데이터의 각 열은 쉼표로 구분됨):

    {0,0,0,0;0,0,0,0;0,1,0,0}

    SUMPRODUCT 함수는 위 배열의 요소를 다음 항목으로 곱합니다.B2:E4 같은 위치:

    {0,0,0,0;0,0,0,0;0,1,0,0} * {22000,13800,8500,3500;25000,23000,22000,20000;700,2000,2300,2500}

    그리고 0을 곱하면 0이 되기 때문에 첫 번째 배열에서 1에 해당하는 항목만 살아남습니다.

    SUMPRODUCT({0,0,0,0;0,0,0,0;0,2000,0,0})

    마지막으로 SUMPRODUCT는 결과 배열의 요소를 더하고 값 2000을 반환합니다.

    참고. 테이블에 이름이 같은 행 또는 열 머리글이 두 개 이상 있는 경우 최종 배열에는 0이 아닌 숫자가 두 개 이상 포함되며 해당 숫자가 모두 합산됩니다. 결과적으로 두 기준을 모두 충족하는 값의 합계를 얻게 됩니다. 이것이 SUMPRODUCT 공식이 처음 찾은 일치 항목을 반환하는 INDEX MATCH MATCH 및 VLOOKUP과 다른 점입니다.

    이름이 지정된 범위를 사용한 행렬 조회(명시적 교차)

    또 하나의 놀랍도록 간단한 방법 Excel의 행렬 조회는 명명된 범위를 사용하는 것입니다. 방법은 다음과 같습니다.

    파트 1: 열 및 행 이름 지정

    표의 각 행과 열에 이름을 지정하는 가장 빠른 방법은 다음과 같습니다.

    1. 전체 테이블(이 경우 A1:E4)을 선택합니다.
    2. 수식 탭의 정의된 이름 그룹에서 만들기를 클릭합니다. from Selection 에서 또는 Ctrl + Shift + F3 단축키를 누릅니다.
    3. Select Names from Selection 대화 상자에서 맨 위 행 Left를 선택합니다. 열, 을 선택하고 확인을 클릭합니다.

    이렇게 하면 행 및 열 머리글을 기반으로 이름이 자동으로 생성됩니다. 그러나 몇 가지 주의 사항이 있습니다.

    • 칼럼 및/또는행 머리글이 숫자이거나 Excel 이름에 허용되지 않는 특정 문자를 포함하는 경우 이러한 열 및 행의 이름은 생성되지 않습니다. 생성된 이름 목록을 보려면 이름 관리자( Ctrl + F3 )를 엽니다. 일부 이름이 누락된 경우 Excel에서 범위 이름을 지정하는 방법에 설명된 대로 수동으로 정의합니다.
    • 일부 행 또는 열 머리글에 공백이 포함된 경우 공백은 밑줄로 대체됩니다(예: <1)>Polar_bear .

    샘플 테이블의 경우 Excel에서 행 이름만 자동으로 생성되었습니다. 열 머리글이 숫자이기 때문에 열 이름은 수동으로 만들어야 합니다. 이를 극복하기 위해 _1990 과 같이 숫자 앞에 밑줄을 붙일 수 있습니다.

    결과적으로 다음과 같은 명명된 범위가 있습니다.

    2부 : 행렬 조회 수식 만들기

    주어진 행과 열의 교차점에서 값을 가져오려면 빈 셀에 다음 일반 수식 중 하나를 입력하면 됩니다.

    = row_name column_name

    또는 그 반대:

    = column_name row_name

    예를 들어, 1990년 대왕고래의 개체수를 얻으려면 , 수식은 다음과 같이 간단합니다.

    =Blue_whale _1990

    더 자세한 지침이 필요한 경우 다음 단계에 따라 프로세스를 안내합니다.

    1. 셀에서 결과를 표시할 위치에 등호(=)를 입력합니다.
    2. Blue_whale 과 같이 대상 행의 이름을 입력하기 시작합니다. 후에문자 몇 개를 입력하면 입력한 내용과 일치하는 모든 기존 이름이 Excel에 표시됩니다. 원하는 이름을 두 번 클릭하여 수식에 입력합니다.
    3. 행 이름 뒤에 공백 을 입력합니다. 이 경우.
    4. 대상 열 이름을 입력합니다(이 경우 _1990 ).
    5. 행과 열 이름을 모두 입력하면 Excel이 테이블의 해당 행과 열을 강조 표시하고 Enter 키를 눌러 수식을 완성합니다.

    행렬 조회가 완료되고 아래 스크린샷에 결과가 표시됩니다.

    Excel에서 행과 열을 조회하는 방법입니다. 읽어 주셔서 감사합니다. 다음 주 블로그에서 뵙기를 바랍니다!

    사용 가능한 다운로드

    2차원 조회 샘플 워크북

    Michael Brown은 소프트웨어 도구를 사용하여 복잡한 프로세스를 단순화하려는 열정을 가진 열성적인 기술 애호가입니다. 기술 산업에서 10년 이상의 경험을 쌓은 그는 Microsoft Excel 및 Outlook은 물론 Google 스프레드시트 및 문서 도구에 대한 기술을 연마했습니다. Michael의 블로그는 자신의 지식과 전문 지식을 다른 사람과 공유하는 데 전념하며 따라하기 쉬운 팁과 생산성 및 효율성 향상을 위한 자습서를 제공합니다. 노련한 전문가이든 초보자이든 Michael의 블로그는 이러한 필수 소프트웨어 도구를 최대한 활용하기 위한 귀중한 통찰력과 실용적인 조언을 제공합니다.