Excel에서 대/소문자 구분 Vlookup을 수행하는 방법 – 수식 예제

  • 이 공유
Michael Brown

이 자습서에서는 Excel VLOOKUP에서 대/소문자를 구분하는 방법을 설명하고 텍스트 대소문자를 구별하는 몇 가지 다른 수식을 시연하며 각 기능의 강점과 한계를 지적합니다.

나는 모든 Excel 사용자는 Excel에서 수직 조회를 수행하는 기능을 알고 있습니다. 바로 VLOOKUP입니다. 그러나 Excel의 VLOOKUP이 대소문자를 구분하지 않는다는 사실을 아는 사람은 거의 없습니다. 즉, 소문자와 대문자를 같은 문자로 취급합니다.

다음은 VLOOKUP이 텍스트 대소문자를 구별할 수 없음을 보여주는 간단한 예입니다. 셀 A2에 "청구서"가 있고 A4에 "청구서"가 있다고 가정합니다. 아래 수식은 "청구서"가 조회 배열에서 첫 번째로 나오고 B2에서 일치하는 값을 반환하기 때문에 "청구서"를 포착합니다.

=VLOOKUP("Bill", A2:B4, 2, FALSE)

이 기사에서는 VLOOKUP에서 대소문자를 구분하는 방법을 알려드리겠습니다. 또한 Excel에서 대소문자를 구분하여 일치시킬 수 있는 몇 가지 다른 함수도 살펴보겠습니다.

    대소문자 구분 VLOOKUP 수식

    위에서 언급했듯이 일반적인 VLOOKUP 수식은 대소문자를 구분하지 않습니다. 그러나 아래 예와 같이 Excel VLOOKUP에서 대/소문자를 구분하는 방법이 있습니다.

    A열에 항목 ID 가 있고 항목의 가격과 설명을 가져오고 싶다고 가정해 보겠습니다. 열 B와 C에서. 문제는 ID에 소문자와 대문자가 모두 포함되어 있다는 것입니다. 예를 들어, A4(001Tvci3u)와 A5(001Tvci3U)의 값은마지막 문자인 "u"와 "U" 각각.

    "001Tvci3 U "을 조회할 때 표준 VLOOKUP 수식은 "001Tvci3 u와 연결된 $90를 출력합니다. "은 조회 배열에서 "001Tvci3 U " 앞에 오기 때문입니다. 하지만 이것은 원하는 것이 아니죠?

    =VLOOKUP(F2, A2:C7, 2, FALSE)

    Excel에서 대/소문자 구분 조회를 수행하기 위해 VLOOKUP, CHOOSE 및 EXACT를 결합합니다. 함수:

    VLOOKUP(TRUE, CHOOSE({1,2}, EXACT( lookup_value, lookup_array), return_array), 2, 0)

    이 일반 공식은 모든 상황에서 완벽하게 작동합니다. 일반 VLOOKUP 수식으로는 할 수 없는 오른쪽에서 왼쪽 까지 조회할 수 있습니다. 이 간단하고 우아한 솔루션을 제안한 Pouriya에게 찬사를 보냅니다!

    우리의 경우 실제 공식은 다음과 같습니다.

    F3에서 가격을 가져오려면:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)

    주석을 가져오려면 F4:

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)

    참고. Excel 365 이외의 모든 Excel 버전에서는 배열 수식으로만 작동하므로 Ctrl + Shift + Enter를 눌러 올바르게 완료해야 합니다. Excel 365에서는 동적 배열 지원으로 인해 일반 수식으로도 작동합니다.

    이 공식의 작동 방식:

    트릭을 수행하는 핵심 부분은 EXACT가 중첩된 CHOOSE 공식입니다.

    CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)

    여기에서 EXACT 함수는 F2의 값을 A2:A7의 각 값과 비교하고 대소문자를 포함하여 정확히 동일한 경우 TRUE를 반환합니다.그렇지 않으면 FALSE:

    {FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}

    CHOOSE의 index_num 인수에 대해 배열 상수 {1,2}를 사용합니다. 결과적으로 이 함수는 위 배열의 논리 값과 C2:C7의 값을 다음과 같은 2차원 배열로 결합합니다.

    {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}

    VLOOKUP 함수는 여기에서 가져옵니다. 2차원 배열(논리 값으로 표시됨)의 첫 번째 열에서 조회 값(TRUE)을 검색하고 찾고 있는 가격인 두 번째 열에서 일치 항목을 반환합니다.

    VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)

    대소문자 구분 XLOOKUP 수식

    Microsoft 365 구독자는 더 간단한 수식으로도 Excel에서 대소문자 구분 조회를 수행할 수 있습니다. 짐작할 수 있듯이 VLOOKUP의 더 강력한 후속 기능인 XLOOKUP 함수에 대해 이야기하고 있습니다. 예시. 간단하게 lookup_array 인수에 대해 EXACT를 사용하십시오:

    XLOOKUP(TRUE, EXACT( lookup_value , lookup_array ), return_array , " 찾을 수 없음")

    마지막 인수("찾을 수 없음")는 선택 사항입니다. 일치하는 항목이 없을 경우 반환할 값을 정의합니다. 생략하면 수식이 아무것도 찾지 못한 경우 표준 #N/A 오류가 반환됩니다.

    샘플 테이블의 경우 사용할 XLOOKUP 수식은 대/소문자를 구분합니다.

    F3에서 가격을 얻으려면:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Not found")

    추출하려면comment F4:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Not found")

    이 공식의 작동 방식:

    이전 예와 마찬가지로 EXACT는 다음을 반환합니다. TRUE 및 FALSE 값의 배열. 여기서 TRUE는 대/소문자 구분 일치를 나타냅니다. XLOOKUP은 위의 배열에서 TRUE 값을 검색하고 return_array 에서 일치 항목을 반환합니다. 조회 열에 정확히 동일한 값이 두 개 이상 있는 경우(대소문자 포함) 수식은 처음 찾은 일치 항목을 반환합니다.

    XLOOKUP 제한 : 사용 가능한 경우에만 Excel 365 및 Excel 2021에서.

    SUMPRODUCT - 일치하는 숫자를 반환하는 대소문자 구분 조회

    제목에서 알 수 있듯이 SUMPRODUCT는 대소문자 구분 조회를 수행할 수 있는 또 다른 Excel 함수입니다. , 하지만 숫자 값 만 반환할 수 있습니다. 이것이 귀하의 경우가 아닌 경우 모든 데이터 유형에 대한 솔루션을 제공하는 INDEX MATCH 예제로 이동하십시오.

    알다시피 Excel의 SUMPRODUCT는 지정된 배열의 구성 요소를 곱하고 곱의 합계를 반환합니다. 대소문자 구분 조회를 원하므로 EXACT 함수를 사용하여 첫 번째 배열을 얻습니다.

    =SUMPRODUCT((EXACT(A2:A7,F2) * (B2:B7)))

    안타깝게도 SUMPRODUCT 함수는 텍스트 값을 곱할 수 없기 때문에 일치하는 텍스트를 반환할 수 없습니다. 이 경우 #VALUE! 아래 스크린샷의 셀 F4와 같은 오류:

    이 수식의 작동 방식:

    VLOOKUP 예와 마찬가지로 EXACT 기능 점검F2의 값을 A2:A7의 모든 값에 대해 비교하고 대소문자를 구분하는 일치 항목에 대해 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다.

    SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28}))

    대부분의 수식에서 Excel은 TRUE를 1로, FALSE를 0으로 평가합니다. 따라서 SUMPRODUCT가 동일한 위치에 있는 두 배열의 요소를 곱하면 일치하지 않는 모든 항목(FALSE)이 0이 됩니다.

    SUMPRODUCT({0;0;0;54;0;0})

    결과적으로 수식은 열 A의 정확한 대소문자 구분 일치에 해당하는 열 B.

    SUMPRODUCT 제한 : 숫자 값만 반환할 수 있습니다.

    INDEX MATCH - 대소문자 구분 조회 모든 데이터 유형

    마지막으로 모든 Excel 버전과 모든 데이터 세트에서 작동하는 제한 없는 대/소문자 구분 조회 수식을 거의 사용하고 있습니다.

    이 예는 가장 좋은 것은 마지막을 위해 저장되지만 이전 예제에서 얻은 지식이 대/소문자를 구분하는 MATCH INDEX 공식을 더 잘 이해하는 데 도움이 될 수 있기 때문입니다.

    INDEX 및 MATCH 함수의 조합이 자주 사용됩니다. 예에서 VLOOKUP에 대한 보다 유연하고 다양한 대안으로 cel을 사용할 수 있습니다. 다음 기사는 VLOOKUP 대신 INDEX MATCH를 사용하여 이 두 가지 기능이 함께 작동하는 방식을 잘 설명하고 있습니다.

    여기서 핵심 사항을 상기시켜 드리겠습니다.

    • MATCH 함수는 지정된 조회 배열에서 조회 값을 검색하고 상대 위치를 반환합니다.
    • 상대조회 값의 위치는 해당 행에서 값을 반환하도록 지시하는 INDEX 함수의 row_num 인수로 바로 이동합니다.

    텍스트 대/소문자를 인식하는 공식의 경우 기존 INDEX MATCH 조합에 기능을 하나 더 추가해야 합니다. 당연히 EXACT 함수가 다시 필요합니다:

    INDEX( return_array , MATCH(TRUE, EXACT( lookup_value , lookup_array ), 0))

    F3의 실제 공식은 다음과 같습니다.

    =INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    F4에서는 다음 공식을 사용합니다.

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    엑셀 365 외 모든 버전의 배열 수식이므로 반드시 Ctrl + Shift + Enter 키를 함께 눌러 입력하세요. 올바르게 완료되면 수식은 아래 스크린샷과 같이 중괄호로 묶입니다.

    이 수식의 작동 방식:

    이전의 모든 예와 마찬가지로 EXACT는 F2의 값과 정확히 일치하는 A2:A7의 각 값에 대해 TRUE를 반환합니다. MATCH의 lookup_value 에 TRUE를 사용하기 때문에 대소문자를 구분하는 정확한 일치 항목의 상대 위치를 반환합니다. 이는 INDEX가 B2:B7에서 일치 항목을 반환하는 데 정확히 필요한 것입니다.

    고급 대소문자 구분 조회 수식

    위에서 언급한 INDEX MATCH 수식이 완벽해 보이죠? 그러나 실제로는 그렇지 않습니다. 그 이유를 보여드리겠습니다.

    조회 값에 해당하는 반환 열의 셀이 비어 있다고 가정합니다. 수식은 무엇을 반환합니까? 아무것도 아님.이제 실제로 무엇을 반환하는지 살펴보겠습니다.

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    아, 수식이 0을 반환합니다! 텍스트 값만 다룰 때는 그다지 중요하지 않을 수도 있습니다. 그러나 워크시트에 숫자가 포함되어 있고 그 중 일부가 실제 0인 경우 문제가 됩니다.

    실제로 앞에서 설명한 다른 모든 조회 수식은 동일한 방식으로 작동합니다. 하지만 이제 흠잡을 데 없는 수식을 원하십니까?

    대소문자를 구분하는 INDEX MATCH 수식을 절대적으로 완벽하게 만들려면 반환 셀이 비어 있는지 확인하고 아무 것도 반환하지 않는 IF 함수로 래핑합니다. 이 경우:

    =IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")

    위 수식에서:

    • "C"는 반환 열입니다.
    • "1"은 숫자입니다. MATCH 함수에 의해 반환된 셀의 상대 위치 실제 셀 주소 로 바꿉니다.

    예를 들어 MATCH 함수의 조회 배열은 A2:A7은 셀 A2의 상대 위치가 "1"임을 의미합니다. 이는 배열의 첫 번째 셀이기 때문입니다. 그러나 실제로 조회 배열은 2행에서 시작합니다. 차이를 보상하기 위해 1을 더하므로 INDIRECT 함수는 오른쪽 셀의 값을 반환합니다.

    아래 스크린샷은 개선된 대소문자 구분 INDEX를 보여줍니다. MATCH 수식이 실행 중입니다.

    반환 셀이 비어 있으면 수식이 아무것도 출력하지 않습니다(빈 문자열).

    반환 셀에 0이 포함된 경우 , 수식은 0을 반환합니다.

    원하는 경우반환 셀이 비어 있을 때 일부 메시지를 표시하고 IF의 마지막 인수에 있는 빈 문자열("")을 일부 텍스트로 바꿉니다.

    =IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "There is nothing to return, sorry.")

    대/소문자를 구분하는 VLOOKUP을 쉽게 수행

    Ultimate Suite for Excel 사용자는 크고 복잡한 테이블을 스트레스 없이 쉽게 조회할 수 있는 특수 도구를 사용합니다. 가장 좋은 점은 Merge Two Tables에 대소문자를 구분하는 옵션이 있다는 것입니다. 아래 예는 그 작동 방식을 보여줍니다.

    Qty를 가져오고 싶다고 가정해 보겠습니다. 고유 항목 ID를 기반으로 조회 테이블에서 기본 테이블로:

    병합 테이블을 실행하는 것입니다. 마법사를 사용하여 다음 단계를 수행합니다.

    1. 새 데이터를 가져올 기본 테이블을 선택합니다.
    2. 새 데이터를 찾을 조회 테이블을 선택합니다.
    3. 하나 이상의 키 열(여기서는 항목 ID)을 선택합니다. 그리고 대소문자 구분 상자를 선택해야 합니다.

  • 마법사가 나머지 세 단계를 안내합니다. 업데이트할 열, 추가할 열을 지정하고 필요한 경우 몇 가지 추가 옵션을 선택합니다.
  • 잠시 후 원하는 결과를 얻을 수 있습니다 :)

    텍스트 대소문자를 고려하여 엑셀에서 조회하는 방법입니다. 읽어 주셔서 감사합니다. 다음 주에 저희 블로그에서 뵙기를 바랍니다!

    다운로드용 실습 워크북

    대소문자 구분 VLOOKUP 예제(.xlsx 파일)

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