표 배열의 첫째 열에서 값을 찾고 표 배열의 다른 열에 있는 같은 행에서 값을 구합니다.
VLOOKUP에서 V는 세로를 의미합니다. 비교값이 찾으려는 데이터의 왼쪽 열에 있으면 HLOOKUP 대신 VLOOKUP을 사용합니다.
구문
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
lookup_value 표 배열 (배열: 여러 가지 결과를 만들거나 행과 열로 구성되는 인수 그룹에 대해 연산이 이루어지는 한 개의 수식을 작성하기 위해 사용됩니다. 배열 범위는 공통 수식을 공유하며 배열 상수는 한 개의 인수로 사용되는 상수 그룹입니다.)의 첫째 열에서 찾을 값입니다. lookup_value는 값 또는 참조일 수 있습니다. lookup_value가 table_array의 첫째 열에 있는 최소값보다 작으면 #N/A 오류 값이 반환됩니다.
table_array 2개 이상의 데이터 열입니다. 범위에 대한 참조 또는 범위 이름을 사용합니다. table_array의 첫째 열의 값은 lookup_value로 검색된 값입니다. 이러한 값은 텍스트, 숫자 또는 논리값이 될 수 있습니다. 대/소문자는 구분하지 않습니다.
col_index_num 비교값과 같은 행에 있는 값을 표시할 table_array의 열 번호입니다. col_index_num이 1이면 table_array의 첫째 열에서 값을 구하고 col_index_num이 2이면 table_array의 둘째 열에서 값을 구합니다. col_index_num의 조건에 따라 다음과 같은 결과가 나타납니다.
- 1보다 작으면 #VALUE! 오류 값이 반환됩니다.
- table_array의 열 수보다 크면 #REF! 오류 값이 반환됩니다.
range_lookup 정확하게 일치하는 값을 찾을 것인지, 근사값을 찾을 것인지를 결정하는 논리값입니다.
주의
- table_array의 첫째 열에서 텍스트 값을 검색할 때는 table_array의 첫째 열에 있는 데이터에 앞/뒤 공백을 두거나, 곧은 따옴표(' 또는 ")와 둥근 따옴표(‘ 또는 “)를 일관성 없이 사용하거나, 인쇄할 수 없는 문자를 사용하지 않도록 주의하십시오. 그럴 경우 정확하지 않은 값이나 예기치 않은 값이 구해질 수 있습니다. 텍스트 데이터를 삭제하기 위해 사용할 수 있는 함수에 대한 자세한 내용은 텍스트 및 데이터 함수를 참고하십시오.
- 숫자 값이나 날짜 값을 검색할 때 table_array의 첫째 열에 있는 데이터를 텍스트 값으로 저장하지 않도록 주의하십시오. 그럴 경우 정확하지 않은 값이나 예기치 않은 값이 구해질 수 있습니다. 자세한 내용은 텍스트로 저장된 숫자를 숫자로 변환을 참고하십시오.
- range_lookup이 FALSE이고 lookup_value가 텍스트이면 lookup_value에 와일드카드 문자, 물음표(?) 및 별표(*)를 사용할 수 있습니다. 물음표는 한 문자에 해당하고 별표는 모든 문자열에 해당합니다. 실제 물음표나 별표를 찾으려면 해당 문자 앞에 물결표(~)를 입력합니다.
예제 1
예제를 빈 워크시트에 복사하면 더 쉽게 이해할 수 있습니다.
예제 복사 방법
- 빈 통합 문서 또는 워크시트를 만듭니다.
- 도움말 항목에서 예제를 선택합니다.
참고 행 또는 열 머리글은 선택하지 마십시오.
도움말에서 예제 선택
- Ctrl+C를 누릅니다.
- 워크시트에서 셀 A1을 선택하고 Ctrl+V를 누릅니다.
- 결과 보기와 결과를 반환하는 수식 보기를 전환하려면 Ctrl+`(억음 악센트 기호)를 누르거나 수식 분석 그룹의 수식 탭에서 수식 표시 단추를 클릭합니다.
다음은 대기 속성 표의 밀도 열을 검색하여 점도 및 온도 열에서 해당 값을 찾는 예제입니다. (여기에 사용된 값은 해면에서의 대기가 섭씨 0도 또는 1기압일 경우입니다.)
|
A |
B |
C |
밀도 |
점도 |
온도 |
0.457 |
3.55 |
500 |
0.525 |
3.25 |
400 |
0.616 |
2.93 |
300 |
0.675 |
2.75 |
250 |
0.746 |
2.57 |
200 |
0.835 |
2.38 |
150 |
0.946 |
2.17 |
100 |
1.09 |
1.95 |
50 |
1.29 |
1.71 |
0 |
수식 |
설명(결과) |
=VLOOKUP(1,A2:C10,2) |
근사값을 사용하여 A열에서 값 1을 검색하고, A열에서 1보다 작거나 같은 값 중 최대값(즉, 0.946)을 찾은 다음, 같은 행에 있는 B열에서 값을 구합니다. (2.17) |
=VLOOKUP(1,A2:C10,3,TRUE) |
근사값을 사용하여 A열에서 값 1을 검색하고, A열에서 1보다 작거나 같은 값 중에서 최대값(즉, 0.946)을 찾은 다음, 같은 행에 있는 C열에서 값을 구합니다. (100) |
=VLOOKUP(.7,A2:C10,3,FALSE) |
정확하게 일치하는 값을 사용하여 A열에서 값 .7을 검색합니다. A열에는 정확하게 일치하는 값이 없기 때문에 오류가 반환됩니다. (#N/A) |
=VLOOKUP(0.1,A2:C10,2,TRUE) |
정확하게 일치하는 값을 사용하여 A열에서 값 0.1을 검색합니다. 0.1은 A열의 최소값보다 작기 때문에 오류가 반환됩니다. (#N/A) |
=VLOOKUP(2,A2:C10,2,TRUE) |
근사값을 사용하여 A열에서 값 2를 검색하고, A열에서 2보다 작거나 같은 값 중 최대값(즉, 1.29)을 찾은 다음, 같은 행에 있는 B열에서 값을 구합니다. (1.71) | |
예제 2
예제를 빈 워크시트에 복사하면 더 쉽게 이해할 수 있습니다.
예제 복사 방법
- 빈 통합 문서 또는 워크시트를 만듭니다.
- 도움말 항목에서 예제를 선택합니다.
참고 행 또는 열 머리글은 선택하지 마십시오.
도움말에서 예제 선택
- Ctrl+C를 누릅니다.
- 워크시트에서 셀 A1을 선택하고 Ctrl+V를 누릅니다.
- 결과 보기와 결과를 반환하는 수식 보기를 전환하려면 Ctrl+`(억음 악센트 기호)를 누르거나 수식 분석 그룹의 수식 탭에서 수식 표시 단추를 클릭합니다.
다음은 아기 용품 표의 상품-ID 열을 검색하고, 원가 및 가산액 열에서 해당 값을 찾아 가격을 계산하고 조건을 테스트하는 예제입니다.
|
A |
B |
C |
D |
상품-ID |
상품 |
원가 |
가산액 |
ST-340 |
유모차 |
145,000 |
30% |
BI-567 |
턱받이 |
3,500 |
40% |
DI-328 |
기저귀 |
21,400 |
35% |
WI-989 |
물티슈 |
5,000 |
40% |
AS-469 |
흡입기 |
2,500 |
45% |
수식 |
설명(결과) |
= VLOOKUP("DI-328", A2:D6, 3, FALSE) * (1 + VLOOKUP("DI-328", A2:D6, 4, FALSE)) |
원가에 가산액 비율을 더해서 기저귀의 소매가를 계산합니다. (28,890) |
= (VLOOKUP("WI-989", A2:D6, 3, FALSE) * (1 + VLOOKUP("WI-989", A2:D6, 4, FALSE))) * (1 - 20%) |
소매가에서 특별 할인가를 빼서 물티슈의 판매가를 계산합니다. (5,600) |
= IF(VLOOKUP(A2, A2:D6, 3, FALSE) >= 20000, "가산액 " & 100 * VLOOKUP(A2, A2:D6, 4, FALSE) &"%", "원가 20,000원 미만") |
상품 원가가 20,000원보다 크거나 같으면 "가산액 nn%"가 표시됩니다. 그렇지 않을 경우 "원가 20,000원 미만"이 표시됩니다. (가산액 30%) |
= IF(VLOOKUP(A3, A2:D6, 3, FALSE) >= 20000, "가산액 " & 100 * VLOOKUP(A3, A2:D6, 4, FALSE) &"%", "원가 " & VLOOKUP(A3, A2:D6, 3, FALSE)) |
상품 원가가 20,000원보다 크거나 같으면 "가산액 nn%"가 표시됩니다. 그렇지 않을 경우 원가가 표시됩니다. (원가 3,500) | |
예제 3
예제를 빈 워크시트에 복사하면 더 쉽게 이해할 수 있습니다.
예제 복사 방법
- 빈 통합 문서 또는 워크시트를 만듭니다.
- 도움말 항목에서 예제를 선택합니다.
참고 행 또는 열 머리글은 선택하지 마십시오.
도움말에서 예제 선택
- Ctrl+C를 누릅니다.
- 워크시트에서 셀 A1을 선택하고 Ctrl+V를 누릅니다.
- 결과 보기와 결과를 반환하는 수식 보기를 전환하려면 Ctrl+`(억음 악센트 기호)를 누르거나 수식 분석 그룹의 수식 탭에서 수식 표시 단추를 클릭합니다.
다음은 사원 표의 ID 열을 검색하고, 다른 열에서 값을 찾아 나이를 계산하고 오류 조건을 테스트하는 예제입니다.
|
A |
B |
C |
D |
E |
ID |
성 |
이름 |
직함 |
생년월일 |
1 |
김 |
소미 |
영업 사원 |
1968/12/08 |
2 |
김 |
덕훈 |
영업 담당 부사장 |
1952/02/19 |
3 |
유 |
가을 |
영업 사원 |
1963/08/30 |
4 |
왕 |
주현 |
영업 사원 |
1958/09/19 |
5 |
선 |
하라 |
영업 과장 |
1955/03/04 |
6 |
김 |
찬진 |
영업 사원 |
1963/07/02 |
수식 |
설명(결과) |
=INT(YEARFRAC(DATE(2004,6,30), VLOOKUP(5,A2:E7,5, FALSE), 1)) |
2004 회계연도를 대상으로 ID가 5인 사원의 나이를 구합니다. YEARFRAC 함수를 사용하여 회계연도 마지막 날짜에서 생년월일을 빼고 INT 함수를 사용하여 그 결과를 정수로 표시합니다. (49) |
=IF(ISNA(VLOOKUP(5,A2:E7,2,FALSE)) = TRUE, "사원을 찾을 수 없습니다", VLOOKUP(5,A2:E7,2,FALSE)) |
ID가 5인 사원이 있으면 사원의 성을 표시합니다. 그렇지 않을 경우 "사원을 찾을 수 없습니다"라는 메시지를 표시합니다. (선)
VLOOKUP 함수가 #NA 오류 값을 반환하면 ISNA 함수는 TRUE 값을 반환합니다. |
=IF(ISNA(VLOOKUP(15,A3:E8,2,FALSE)) = TRUE, "사원을 찾을 수 없습니다", VLOOKUP(15,A3:E8,2,FALSE)) |
ID가 15인 사원이 있으면 사원의 성을 표시합니다. 그렇지 않을 경우 "사원을 찾을 수 없습니다"라는 메시지를 표시합니다. (사원을 찾을 수 없습니다)
VLOOKUP 함수가 #NA 오류 값을 반환하면 ISNA 함수는 TRUE 값을 반환합니다. |
=VLOOKUP(4,A2:E7,2,FALSE) & "" & VLOOKUP(4,A2:E7,3,FALSE) & "님은 " & VLOOKUP(4,A2:E7,4,FALSE) & "입니다." |
ID가 4인 사원을 대상으로 세 번째 셀의 값을 완전한 문장으로 연결합니다. (왕주현님은 영업 사원입니다.) | |
참고 위 예제의 첫 번째 수식에는 YEARFRAC 함수가 사용되었습니다. 이 함수를 사용할 수 없고 #NAME? 오류가 나타나면 분석 도구 추가 기능을 설치 및 로드합니다. |