You have multiple accounts
Choose the account you want to sign in with.

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

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

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

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

브라우저가 비디오를 지원하지 않습니다. Microsoft Silverlight, Adobe Flash Player 또는 Internet Explorer 9를 설치하세요.

팁: VLOOKUP의 비결은 찾고자 하는 값(Fruit)이 찾고자 하는 반환 값(Amount)의 왼쪽에 있도록 데이터를 구성하는 것입니다.

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 인수에 지정한 셀 범위의 첫 번째 열에 있어야 합니다.

예를 들어 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년 3월 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이 105(lookup_value)에 대한 B열의 성 값을 반환하는지 확인합니다. VLOOKUP에서 성을 찾으면 IF가 성을 표시하고, 그렇지 않으면 IF가 직원을 찾을 수 없음을 반환합니다. ISNA는 VLOOKUP이 #N/A를 반환하는 경우 오류가 #N/A 대신 직원을 찾을 수 없음으로 대체되는지 확인합니다.



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

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

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

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

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

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

    관계 관리 대화 상자
  3. 나열된 각 관계에 대해 다음 사항에 유의하세요.

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

    • 관련 Lookup 테이블 이름입니다. VLOOKUP 수식의 table_array입니다.

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

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

    이 예제에서 열 G는 변호사(lookup_value)를 사용하여 수식 =VLOOKUP([@Attorney], tbl_Attorney,4, FALSE)로 변호사 워크시트 테이블인 tblAttorney(table_array)의 네 번째 열(col_index_num = 4)에서 청구율 데이터를 가져옵니다.

    수식은 셀 참조와 범위 참조를 사용할 수도 있습니다. 이 예에서는 =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,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 기술 커뮤니티의 전문가에게 질문하고, Answers 커뮤니티에서 지원을 받을 수 있습니다.

Excel에서 라이브 및 무료 답변 받기

참고 항목

빠른 참조 카드: VLOOKUP 복습
빠른 참조 카드: VLOOKUP 문제해결 도움말
#VALUE! VLOOKUP 함수의 오류
VLOOKUP 함수에서 #N/A 오류를 수정하는 방법
Excel의 수식 개요
깨진 수식을 피하는 방법
수식 오류 감지
Excel 함수(알파벳순)
Excel 함수(범주별)
VLOOKUP( 무료 미리보기)

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

기술 향상
교육 살펴보기
새로운 기능 우선 가져오기
Microsoft Office 참가자 참가

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?

의견 주셔서 감사합니다!

×