VLOOKUP 함수

팁: 모든 방향으로 작동하고 기본적으로 정확한 일치를 반환하는 향상된 VLOOKUP 버전인 새 XLOOKUP 함수를 사용하여 이전 버전보다 더 쉽고 편리하게 사용할 수 있습니다.

테이블 또는 행에 따라 범위를 찾아야 하는 경우 VLOOKUP을 사용 합니다. 예를 들어 자동차 부품의 가격을 부품 번호로 검색하거나 직원 ID를 기반으로 직원 이름을 찾을 수 있습니다.

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

=VLOOKUP(찾아보는 항목, 반환할 값을 포함하는 범위의 열 번호, 대략 또는 정확한 일치를 반환합니다. 1/TRUE 또는 0/FALSE로 표시).

브라우저가 비디오를 지원하지 않습니다.

팁: VLOOKUP의 비밀은 검색한 값(과일)이 찾을 반환 값(금액)의 왼쪽에 있도록 데이터를 구성하는 것입니다.

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

구문 

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

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

  • =VLOOKUP(A2,A10:C20,2,TRUE)

  • =VLOOKUP("장",B2:E7,2,FALSE)

  • =VLOOKUP(A2,'Client Details'! 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(lookup value, lookup value를 포함하는 범위, 반환 값을 포함하는 범위의 열 번호, 대략 일치(TRUE) 또는 정확한 일치(FALSE)).

예제

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

예제 1

=VLOOKUP(B3,B2:E7,2,FALSE)

VLOOKUP은 B2:E7의 첫 번째 열(B 열)에서 글꼴나를 table_array B2:E7의 두 번째 열(C 열)에서 Olivier를 table_array.  False는 정확한 일치를 반환합니다.

예제 2

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

VLOOKUP은 A2:C7 범위의 두 번째 열(열 B)에서 102(lookup_value)의 성의 정확한 일치(FALSE)를 찾아 글꼴나를 반환합니다.

예제 3

=IF(VLOOKUP(103,A1:E7,2,FALSE)="Souse","located","Not found")

VLOOKUP이 A1:E7(lookup_value)에서 직원 correspoinding의 성으로 Sousa를 반환하는지 table_array. 103에 해당하는 성은 Leal이기 때문에 IF 조건은 false이고 찾을 수 없습니다가 표시됩니다.

예제 4

=INT(YEARFRAC(DATE(2014,6,30), VLOOKUP(105,A2:E7,5,FLASE),1))

VLOOKUP은 A2:E7 범위(lookup_value)에서 109(lookup_value)에 해당하는 직원의 생년월일을 table_array 03/04/1955를 반환합니다. 그런 다음 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))

VLOOKUP이 105(105)의 열 B에서 성 값을 반환하는지 lookup_value. VLOOKUP에서 성(을)을 찾은 경우 IF가 성을 표시하고 그렇지 않으면 직원을 찾을 수 없습니다. ISNA는 VLOOKUP이 #N/A를 반환하는 경우 오류가 직원/A가 아닌 직원으로 #N 합니다.



이 예제에서 반환 값은 105에 해당하는 성인 Burke입니다.

VLOOKUP을 사용하여 테이블 중 하나에 다른 모든 테이블과 공통된 필드가 있는 한 여러 테이블을 하나의 테이블로 결합할 수 있습니다. 원본을 하나의 테이블로 결합하고 데이터 기능의 데이터 원본을 새 테이블로 변경하여 데이터 기능을 지원하지 않는 이전 버전의 데이터 Excel 사용자와 통합 문서를 공유해야 하는 경우 특히 유용할 수 있습니다(데이터 기능 자체가 이전 버전에서 지원되는 경우) 데이터 Excel 사용할 수 있습니다.

VLOOKUP을 사용하여 다른 테이블에서 데이터를 얻을 수 있는 열이 있는 워크시트

여기서 A-F 및 H 열에는 워크시트에서 값만 사용하는 값 또는 수식이 있으며 나머지 열은 VLOOKUP 및 열 A(클라이언트 코드) 및 열 B(변호사)를 사용하여 다른 테이블에서 데이터를 얻습니다.

  1. 새 워크시트에 공통 필드가 있는 테이블을 복사하고 이름을 지정합니다.

  2. 데이터 >데이터 도구 > 관계 관리 대화 상자를 를 클릭합니다.

    관계 관리 대화 상자
  3. 나열된 각 관계에 대해 다음을 유의합니다.

    • 테이블을 연결하는 필드(대화 상자의 괄호에 나열). VLOOKUP lookup_value 수식에 대한 기본 설정입니다.

    • 관련 룩업 테이블 이름입니다. VLOOKUP table_array 수식의 기본 설정입니다.

    • 새 열에 원하는 데이터가 있는 관련 보기 테이블의 필드(열)입니다. 이 정보는 관계 관리 대화 상자에 표시되지 않습니다. 검색할 필드를 보기 위해 관련 검색 테이블을 살펴봐야 합니다. 열 번호(A=1)를 기록하려고 합니다. 수식의 col_index_num 수식입니다.

  4. 새 테이블에 필드를 추가하기 위해 3단계에서 수집한 정보를 사용하여 첫 번째 빈 열에 VLOOKUP 수식을 입력합니다.

    예제에서 G 열은 변호사(lookup_value)를 사용하여 변호사 워크시트 테이블 tblAttorneys(table_array)에서 네 번째 열(col_index_num= 4)에서 =VLOOKUP([@Attorney],tbl_Attorneys,4,FALSE)을사용하여 청구 요금 데이터를 얻습니다.

    수식은 셀 참조 및 범위 참조를 사용할 수도 있습니다. 이 예제에서는 =VLOOKUP(A2,'Attorneys'! A:D,4,FALSE).

  5. 필요한 모든 필드가 필요할 때까지 필드를 계속 추가합니다. 여러 테이블을 사용하는 데이터 기능이 포함된 통합 문서를 준비하려는 경우 데이터 기능의 데이터 원본을 새 테이블로 변경합니다.

문제

원인

잘못된 값 반환

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 table-array에 있는 열의 수보다 크면 #REF! 오류 값이 나타납니다.

VLOOKUP의 #REF! 오류를 해결하는 방법에 대한 자세한 내용은 #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:C,2,FALSE)와 같은 @ 연산자를 사용하여 앵커업 참조를 고정하여문제를해결할 수 있습니다. 또는 기존 VLOOKUP 메서드를 사용하고 =VLOOKUP(A2 ,A:C,2,FALSE)의 전체 열 대신 단일 셀을 참조할 수 있습니다.

실행

이유

range_lookup 에 대해 절대 참조를 사용합니다.

절대 참조를 사용하면 항상 같은 조회 범위만 참조하도록 수식을 채울 수 있습니다.

절대 셀 참조를 사용하는 방법에 대해 알아보세요.

숫자 값 또는 날짜 값은 텍스트로 저장하지 않습니다.

숫자 값이나 날짜 값을 검색할 때는 table_array의 첫 번째 열에 있는 데이터가 텍스트 값으로 저장되지 않도록 합니다. 그렇지 않으면 VLOOKUP에서 정확하지 않은 값이나 예기치 않은 값을 반환할 수 있습니다.

첫 번째 열을 정렬합니다.

range_lookup 이 TRUE인 경우 VLOOKUP을 사용하기 전에 table_array의 첫 번째 열을 정렬합니다.

와일드카드 문자를 사용합니다.

false range_lookup 및 lookup_value 텍스트인 경우 와일드카드 문자(물음표(?) 및 별표(*))를 lookup_value. 물음표는 한 문자에 해당합니다. 별표는 개수에 상관없는 임의의 문자열에 해당합니다. 실제 물음표나 별표를 찾으려면 해당 문자 앞에 물결표(~)를 입력합니다.

예를 들어 =VLOOKUP("Fontan?",B2:E7,2,FALSE)은 다를 수 있는 마지막 문자가 있는 글꼴나의 모든 인스턴스를 검색합니다.

데이터에 잘못된 문자가 없는지 확인합니다.

첫 번째 열에서 텍스트 값을 검색할 때는 첫 번째 열에 있는 데이터에 앞/뒤 공백을 두거나, 곧은 따옴표(' 또는 ")와 둥근 따옴표(‘ 또는 “)를 일관성 없이 사용하거나, 인쇄할 수 없는 문자를 사용하지 않도록 주의하세요. 그럴 경우 정확하지 않은 값이나 예기치 않은 값이 반환될 수 있습니다.

정확한 결과를 얻으려면 CLEAN 함수 또는 TRIM 함수를 사용하여 셀에서 표 값 뒤에 오는 공백을 제거하세요.

추가 지원

언제든지 Excel 기술 커뮤니티의 전문가에게 질문하고, Answers 커뮤니티에서 지원을 받을 수 있습니다.

참고 항목

빠른 참조 카드: VLOOKUP 새로 고침
빠른 참조 카드: VLOOKUP 문제 해결 팁
VLOOKUP 함수의 #VALUE! 오류를 수정하는 방법
VLOOKUP 함수에서 #N/A 오류를 수정하는 방법
수식 개요 Excel
수식이 손상된 것을 방지하는 방법
수식에서 오류 감지
Excel 함수(사전순)
Excel 함수(범주별)
VLOOKUP(무료 미리 보기)

추가 도움이 필요하신가요?

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여