[Excel] VLOOKUP
VLOOKUP함수는 엑셀에서 특정 값을 검색하고, 같은 행에 있는 다른 값을 반환하는 데 사용된다.
데이터베이스와 같은 큰 데이터 세트에서 특정 항목을 빠르게 찾고 관련된 정보를 얻는 데 매우 유용하다.
VLOOKUP 함수의 기본 구조
VLOOKUP 함수의 기본 구문은 다음과 같다.
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
lookup_value | 검색할 값 |
table_array | 검색 할 데이터 범위 |
col_index_num | 검색된 값이 있는 행에서 반환할 열 번호 |
range_lookup | 일치 유형을 지정 (TRUE-근사값 일치, FALSE-정확한 일치) |
예를 들어 다음과 같은 제품 목록이 있다고 가정해보자.
A | B | C | |
1 | 제품 ID | 제품 이름 | 가격 |
2 | 101 | 노트북 | 900 |
3 | 102 | 스마트폰 | 600 |
4 | 103 | 태블릿 | 300 |
5 | 104 | 모니터 | 200 |
제품 목록이 'A1:C5' 범위에 있다고 가정 후 E1 셸에 ID가 102라고 입력되어 있을 때,
E2 셸에 제품의 가격을 찾기 위해 다음과 같은 VLOOKUP 공식을 입력한다.
=VLOOKUP(E1, A1:C5, 3, FALSE)
위의 공식을 입력하면 E2에는 스마트폰의 가격인 600이 표시된다.
D | E | |
1 | 제품 ID | 102 |
2 | 가격 | 600 |
VLOOKUP 다중 조건
VLOOKUP을 이용하면서 여러 조건을 만족하는 값을 찾아야 할 경우가 있다.
예를 들어, 고객 ID와 제품 ID를 동시에 기준으로 데이터를 검색해야 할 경우가 있을 것이다.
이런 경우에는 INDEX와 MATCH 함수를 함께 이용하면 여러 조건을 기반으로 데이터를 검색하는데 유용하다.
=INDEX(table_array, MATCH(1, (조건범위1=조건1) * (조건범위2=조건2) * ..., 0))
예를 들어 다음과 같은 테이블이 A1:C5 범위에 있다고 가정해보자.
여기서 고객 ID가 1001이고 제품 ID가 B인 판매량을 찾아야한다.
A | B | C | |
1 | 고객 ID | 제품 ID | 판매량 |
2 | 1001 | A | 50 |
3 | 1002 | B | 30 |
4 | 1001 | B | 20 |
5 | 1003 | A | 60 |
INDEX, MATCH
1. MATCH 함수로 조건 검색하기
먼저 MATCH 함수로 조건을 검색한다. MATCH 함수는 조건을 만족하는 행의 위치를 반환한다.
=MATCH(1, (A2:A5=1001) * (B2:B5="B"), 0)
A2:A5=1001 | 고객 ID가 1001인 행을 찾는다. |
B2:B5=B | 제품 ID가 B인 행을 찾는다. |
(A2:A5=1001) * (B2:B5="B") | 두 조건이 모두 참인 경우에만 1을 반환한다. |
MATCH(1, ... , 0) | 위의 조건을 만족하는 행의 위치를 찾는다. |
❗ MATCH 함수에서 배열 수식을 사용하려면 'Ctrl + Shift + Enter'를 눌러야 한다.
2. INDEX 함수로 값 찾기
MATCH 함수로 찾은 행의 위치를 INDEX 함수에 전달하여 실제 값을 가져온다.
=INDEX(C2:C5, MATCH(1, (A2:A5=1001) * (B2:B5="B"), 0))
결과적으로 이 수식은 고객 ID가 1001이고 제품 ID가 B인 행의 판매량을 반환한다.
배열 수식을 사용해야 하므로, 수식 입력 후 'Ctrl + Shift + Enter' 를 눌러야 한다.
E | F | |
1 | 판매량 | 20 |
VLOOKUP 사용 시 주의 사항
1. 첫 번째 열
: VLOOKUP 함수는 항상 'table_array'의 첫 번째 열에서 'lookup_value'를 검색한다.
2. 정확한 일치와 근사값 일치
: 'range_lookup'을 'FALSE'로 설정하면 정확한 일치를 찾고, 'TRUE'로 설정하면 근사값을 찾는다.
3. 정렬
: 'range_lookup'을 'TRUE'로 사용하면, 첫 번째 열이 오름차순으로 정렬되어 있어야 올바른 값을 찾을 수 있다.
'💾 Data > etc' 카테고리의 다른 글
[etc] MapReduce (0) | 2024.04.01 |
---|---|
[Excel] 엑셀을 이용하여 INSERT QUERY문 만들기 (0) | 2023.09.16 |
[Superset] 차트에 HyperLink 걸기 (0) | 2023.07.11 |
[Hive] Apache Hive란? (0) | 2023.06.01 |
[Trino] trino(Presto SQL)란? (0) | 2023.05.31 |