VLOOKUP 함수

적용 대상
Microsoft 365용 Excel Mac용 Microsoft 365용 Excel Excel 2024 Mac용 Excel 2024 Excel 2021 Mac용 Excel 2021 Excel 2019 Excel 2016

XLOOKUP 함수를 사용해 보세요. VLOOKUP의 개선된 버전으로, 어느 방향으로나 작동하며, 기본값으로 정확한 일치 항목을 반환하여 이전 버전보다 더 사용하기 쉽고 편리합니다.

테이블이나 범위에서 행별로 항목을 찾아야 할 때 VLOOKUP을 사용합니다. 예를 들어 부품 번호로 자동차 부품의 가격을 찾거나 직원 ID를 기반으로 직원 이름을 찾습니다.

가장 간단한 형식의 VLOOKUP 함수는 다음과 같은 의미입니다.

=VLOOKUP(조회하려는 항목, 찾고자 하는 위치, 반환할 값이 포함된 범위의 열 번호, 대략적 또는 정확히 일치 반환 - 1/TRUE 또는 0/FALSE로 표시).

  • VLOOKUP의 비결은 찾고자 하는 값(Fruit)이 찾고자 하는 반환 값(Amount)의 왼쪽에 있도록 데이터를 구성하는 것입니다.
  • Microsoft Copilot 구독자인 경우 Copilot를 사용하면 VLookup 또는 XLookup 함수를 더 쉽게 삽입하고 사용할 수 있습니다. Excel에서 쉽게 조회할 수 있는 Copilot를 참조하세요.

기술적인 세부 정보

VLOOKUP 함수를 사용하여 표에서 값을 조회합니다.

구문

VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

예를 들면 다음과 같습니다.

  • =VLOOKUP(A2,A10:C20,2,TRUE)
  • =VLOOKUP("장",B2:E7,2,FALSE)
  • =VLOOKUP(A2,'클라이언트 세부 정보'! A:F,3,FALSE)
인수 이름 설명
lookup_value(필수) 조화하려는 값입니다. 조회하려는 값은 table_array 인수에서 지정한 셀 범위의 첫 번째 열에 있어야 합니다.
예를 들어 테이블 배열 이 B2:D7 셀에 걸쳐 있는 경우 lookup_value B 열에 있어야 합니다.
Lookup_value 값 또는 셀에 대한 참조일 수 있습니다.
Table_array(필수) VLOOKUP에서 lookup_value 및 반환 값을 검색할 셀 범위입니다. 명명된 범위 또는 테이블을 사용할 수 있으며 인수에 셀 참조 대신 이름을 사용할 수 있습니다.
셀 범위의 첫 번째 열에는 lookup_value 포함되어야 합니다. 셀 범위에는 찾으려는 반환 값도 포함되어야 합니다.
워크시트에서 범위를 선택하는 방법을 알아보세요.
col_index_num(필수) 반환 값이 포함된 열 번호( table_array 왼쪽 열의 경우 1부터 시작)입니다.
range_lookup(선택 사항) VLOOKUP으로 근사값을 찾을 것인지, 정확하게 일치하는 값을 찾을 것인지를 지정하는 논리값입니다.
  • 근사값 일치 - 1/TRUE는 테이블의 첫 번째 열이 숫자 또는 알파벳순으로 정렬되어 있다고 가정한 다음 가장 가까운 값을 검색합니다. 인수를 지정하지 않으면 이 방법이 기본적으로 사용됩니다. 예: =VLOOKUP(90,A1:B100,2,TRUE).
  • 정확히 일치 - 0/FALSE는 첫 번째 열에서 정확한 값을 검색합니다. 예: =VLOOKUP("Smith",A1:B100,2,FALSE).

시작 방법

VLOOKUP 구문을 작성하는 데 필요한 네 가지 정보가 있습니다.

  1. 조회하려는 값으로서, 조회 값이라고도 합니다.
  2. 조회 값이 있는 범위입니다. 조회 값은 항상 VLOOKUP이 제대로 작동하는 범위에서 첫 번째 열에 있어야 한다는 것을 기억해 두세요. 예를 들어, 조회 값이 C2 셀에 있다면 범위는 C로 시작해야 합니다.
  3. 반환 값이 포함된 범위에 있는 열 번호입니다. 예를 들어 B2:D11을 범위로 지정하면 B를 첫 번째 열로, C를 두 번째 열로 계산하는 식으로 계산해야 합니다.
  4. 원할 경우, 유사 일치가 필요하면 TRUE를 지정하고, 반환 값의 정확한 일치가 필요하면 FALSE를 지정할 수 있습니다. 항목을 지정하지 않으면, 기본값은 항상 TRUE나 유사 일치가 됩니다.

이제 다음과 같이 위의 항목을 모두 넣습니다.

=VLOOKUP(조회 값, 조회 값이 포함된 범위, 반환 값이 포함된 범위의 열 번호, 대략적인 일치(TRUE) 또는 정확히 일치(FALSE)).

예제

다음은 VLOOKUP의 몇 가지 예입니다.

예제 1

=VLOOKUP(B3,B2:E7,2,FALSE) VLOOKUP은 table_array B2:E7의 첫 번째 열(B 열)에서 Fontana를 찾고 table_array 두 번째 열(C 열)에서 Olivier를 반환합니다. False이면 정확한 일치 항목이 반환됩니다.

예제 2

=VLOOKUP(102,A2:C7,2,FALSE) VLOOKUP은 A2:C7 범위의 두 번째 열(B 열)에서 102(lookup_value)에 대한 성의 정확한 일치(FALSE)를 찾고 Fontana를 반환합니다.

예제 3

=IF(VLOOKUP(103,A1:E7,2,FALSE)=Souse,Located,Not found) IF는 VLOOKUP이 A1:E7(table_array)에서 103(lookup_value)으로 Sousa를 성을 반환하는지 확인합니다. 103에 해당하는 성은 Leal이므로 IF 조건이 false이고 찾을 수 없음이 표시됩니다.

예제 4

=INT(YEARFRAC(DATE(2014,6,30),VLOOKUP(105,A2:E7,5,FLASE),1)) VLOOKUP은 A2:E7 범위(table_array)에서 109(lookup_value)에 해당하는 직원의 생년월일을 찾고 1955년 03월 04일을 반환합니다. 그런 다음 YEARFRAC는 2014/6/30에서 이 생년월일을 빼고 값을 반환합니다. 이 값은 INY에서 정수 59로 변환됩니다.

예제 5

IF(ISNA(VLOOKUP(105,A2:E7,2,FLASE))=TRUE,Employee not found,VLOOKUP(105,A2:E7,2,FALSE)) IF는 VLOOKUP이 B 열에서 105(lookup_value)에 대한 성 값을 반환하는지 확인합니다. VLOOKUP에서 성을 찾으면 IF에서 성을 표시하고, 그렇지 않으면 IF가 Employee을 찾을 수 없음을 반환합니다. ISNA는 VLOOKUP이 #N/A를 반환하는 경우 오류는 #N/A 대신 Employee를 찾을 수 없음으로 대체됩니다. 이 예제에서 반환 값은 105에 해당하는 성인 Burke입니다.

일반적인 문제

문제 원인
잘못된 값 반환 range_lookup TRUE이거나 제외된 경우 첫 번째 열은 사전순 또는 숫자로 정렬해야 합니다. 첫 번째 열이 정렬되어 있지 않으면 잘못된 값이 반환될 수 있습니다. 첫 번째 열을 정렬하거나 정확한 일치를 위해 FALSE를 사용합니다.
셀의 #N/A
  • range_lookup TRUE이면 lookup_value 값이 table_array 첫 번째 열의 가장 작은 값보다 작으면 #N/A 오류 값이 표시됩니다.
  • range_lookup FALSE이면 #N/A 오류 값은 정확한 숫자를 찾을 수 없음을 나타냅니다.
VLOOKUP의 #N/A 오류를 해결하는 방법에 대한 자세한 내용은 How to correct a #N/A error in the VLOOKUP function(VLOOKUP 함수에서 발생하는 #N/A 오류의 수정 방법)을 참조하세요.
행 또는 열을 삭제하여 발생하는 #REF! 셀에 col_index_num테이블 배열의 열 수보다 크면 #REF! 오류 값이 나타납니다.
VLOOKUP의 #REF! VLOOKUP의 오류는 #REF! 오류를 수정하는 방법을 참조하세요.
#VALUE! 셀에 table_array 1 미만이면 #VALUE! 오류 값이 나타납니다.
#VALUE! 문제 해결에 대한 자세한 내용은 VLOOKUP의 오류는 VLOOKUP 함수에서 #VALUE! 오류를 수정하는 방법을 참조하세요.
셀의 #NAME? #NAME? 오류 값은 일반적으로 수식에 따옴표가 없음을 의미합니다. 사람의 이름을 조회하려면 수식에서 이름을 따옴표로 묶어야 합니다. 예를 들어 =VLOOKUP("장",B2:E7,2,FALSE)에서 "장"과 같은 형식으로 이름을 입력합니다.
자세한 내용은 #NAME! 오류를 수정하는 방법을 참조하세요.
Excel의 #SPILL! 셀에 이 특정 #SPILL! 오류 는 일반적으로 수식이 조회 값의 암시적 교차점에 의존하고 전체 열을 참조로 사용한다는 것을 의미합니다. 예를 들어 =VLOOKUP( A:A,A:C,2,FALSE). =VLOOKUP(@A:A,A:C,2,FALSE)와 같이 @ 연산자로 조회 참조를 고정하여 문제를 해결할 수 있습니다. 또는 기존 VLOOKUP 방법을 사용하여 전체 열 대신 단일 셀을 참조할 수 있습니다. =VLOOKUP(A2,A:C,2,FALSE).

모범 사례

방법 이유
range_lookup 절대 참조 사용 절대 참조를 사용하면 항상 같은 조회 범위만 참조하도록 수식을 채울 수 있습니다.
절대 셀 참조를 사용하는 방법에 대해 알아보세요.
숫자 값 또는 날짜 값은 텍스트로 저장하지 않습니다. 숫자 또는 날짜 값을 검색할 때 table_array 열의 데이터가 텍스트 값으로 저장되지 않았는지 확인합니다. 그렇지 않으면 VLOOKUP에서 정확하지 않은 값이나 예기치 않은 값을 반환할 수 있습니다.
첫 번째 열을 정렬합니다. range_lookup TRUE인 경우 VLOOKUP을 사용하기 전에 table_array 첫 번째 열을 정렬합니다.
와일드카드 문자를 사용합니다. range_lookup FALSE이고 lookup_value 텍스트인 경우 와일드카드 문자(물음표(?) 및 별표(*))를 lookup_value 사용할 수 있습니다. 물음표는 한 문자에 해당합니다. 별표는 개수에 상관없는 임의의 문자열에 해당합니다. 실제 물음표나 별표를 찾으려면 해당 문자 앞에 물결표(~)를 입력합니다.
예를 들어 =VLOOKUP("Fontan?",B2:E7,2,FALSE)는 다를 수 있는 마지막 문자를 사용하여 Fontana의 모든 인스턴스를 검색합니다.
데이터에 잘못된 문자가 없는지 확인합니다. 첫 번째 열에서 텍스트 값을 검색할 때 첫 번째 열의 데이터에 선행 공백, 후행 공백, 직선(' 또는 " ) 및 중형( ' 또는 ") 따옴표 또는 인쇄되지 않는 문자의 일관성 없는 사용이 없는지 확인합니다. 그럴 경우 정확하지 않은 값이나 예기치 않은 값이 반환될 수 있습니다.
정확한 결과를 얻으려면 CLEAN 함수 또는 TRIM 함수를 사용하여 셀에서 표 값 뒤에 오는 공백을 제거하세요.

추가 지원

언제든지 Excel Tech Community의 전문가에게 문의하거나 커뮤니티에서 지원을 받을 수 있습니다.