엑셀에서 기본 함수로 반드시 알아야 할 함수가 VLOOKUP 함수입니다. 그런데 아마도 사용하면서 한 가지 불편한 점이 있다면 데이터에서 어떠한 값을 검색하여 표시하고 싶을 때 첫 번째 열만 검색이 가능하다는 단점이 있습니다.
이런 단점 때문에 데이터에서 원하는 값을 검색하여 표시하고 싶을 때 데이터의 순서를 변경 즉 검색에 해당하는 데이터를 첫 번째 열로 변경해서 사용했습니다. 또는 데이터를 2개 이상을 만들어서 사용하는 경우도 있습니다. 이렇게 사용하면 데이터 낭비이고 또 신규로 추가되거나 수정할 때 데이터 입력 및 수정에 시간이 더 소요되는 문제도 발생합니다.
아래 VLOOKUP 함수의 예시는 학번을 검색하여 이름, 국어, 수학, 영어의 점수를 가지고 와서 표시하는 것입니다. 데이터에서 학번의 첫 번째 열에 있기 때문에 가능합니다. 만약 이름을 검색하여 표시하고 싶을 경우에는 어떻게 해야 할까요? VLOOKUP 함수를 사용해야 한다면 데이터의 학번과 이름의 순서를 변경하면 가능합니다.
VLOOKUP 함수는 아래를 참조해 주십시오.
이런 VLOOKUP 함수에 단점을 극복하기 위해서 2개의 함수를 사용하여 이러한 불편한 점을 해결했습니다. 그 함수가 INDEX 와 MATCH 함수입니다.
위의 예시에서 데이터의 순서를 변경하지 않고 학번 또는 이름으로 검색해서 표시하고 싶은 경우에는 INDEX 와 MATCH 함수를 사용하면 가능합니다.
=VLOOKUP ( 검색 값, 검색 범위, 열 번호, 일치 여부 )
=INDEX ( 검색 대상열, MATCH ( 검색 값, 검색 기준열, 0) )
* 검색 대상열: 검색해서 표시하고 싶은 열 값을 입력하면 됩니다. VLOOKUP의 열 번호를 의미합니다.
* 검색 기준열: 검색 기준이 되는 열입니다. VLOOKUP에서는 첫 번째 열을 기준으로 검색하므로 같은 의미입니다.
INDEX 와 MATCH 함수는 아래를 참조해 주십시오.
학번을 입력하여 다른 정보를 표시
데이터 첫 번째 열에 학번이 있음으로 VLOOKUP을 사용해서는 가능하고 INDEX 와 MATCH 함수를 사용해서도 가능합니다.
<VLOOKUP 함수 사용 예>
VLOOKUP 함수를 사용하여 노란색 부분(A2)에 학번을 입력하여 이름, 국어, 수학, 영어를 표시하고 싶은 경우 아래와 같이 작성하면 됩니다.
이름 밑에 B2에는 =VLOOKUP(A2,G2:K5,2,FALSE)를 입력합니다.
국어 밑에 C2에는 =VLOOKUP(A2,G2:K5,3,FALSE)를 입력합니다.
수학 밑에 D2에는 =VLOOKUP(A2,G2:K5,4,FALSE)를 입력합니다.
영어 밑에 E2에는 =VLOOKUP(A2,G2:K5,5,FALSE)를 입력합니다.
<INDEX + MATCH 함수 사용 예>
INDEX 와 MATCH 함수를 사용하여 노란색 부분(A2)에 학번을 입력하여 이름, 국어, 수학, 영어를 표시하고 싶은 경우 아래와 같이 작성하면 됩니다.
이름 밑에 B2에는 =INDEX(H2:H5,MATCH(A2,G2:G5,0))를 입력합니다.
국어 밑에 C2에는 =INDEX(I2:I5,MATCH(A2,G2:G5,0))를 입력합니다.
수학 밑에 D2에는 =INDEX(J2:J5,MATCH(A2,G2:G5,0))를 입력합니다.
영어 밑에 E2에는 =INDEX(K2:K5,MATCH(A2,G2:G5,0))를 입력합니다.
이름을 입력하여 다른 정보를 표시
데이터 첫 번째 열에 학번이 있음으로 VLOOKUP을 사용해서는 불가능하고 INDEX 와 MATCH 함수를 사용해서는 가능합니다.
<VLOOKUP 함수 사용 예>
VLOOKUP 함수는 첫 번째 열을 검색하여 데이터를 표시함으로 데이터 순서를 변경하지 않고서는 표시할 방법이 없습니다. 이것이 위에서 설명해 드린 VLOOKUP 함수의 단점입니다.
<INDEX + MATCH 함수 사용 예>
하지만 INDEX 와 MATCH 함수를 사용하면 데이터 순서를 변경하지 않더라고 표시할 수 있습니다.
학번 밑에 B2에는 =INDEX(G2:G5,MATCH(A2,H2:H5,0))를 입력합니다.
국어 밑에 C2에는 =INDEX(I2:I5,MATCH(A2,H2:H5,0))를 입력합니다.
수학 밑에 D2에는 =INDEX(J2:J5,MATCH(A2,H2:H5,0))를 입력합니다.
영어 밑에 E2에는 =INDEX(K2:K5,MATCH(A2,H2:H5,0))를 입력합니다.
2019년 8월 XLOOKUP 함수가 추가되었습니다. 아직 오피스365 정도에서만 사용할 수 있습니다. 엑셀 다음 버전에는 아마도 추가될 것 같습니다. 사용법은 위의 INDEX 와 MATCH 함수 사용법과 비슷합니다.
그동안 엑셀을 사용하는 사용자라면 VLOOKUP 함수는 반드시 알아야 할 함수였습니다. 그러나 앞으로는 VLOOKUP 함수가 아닌 XLOOKUP 함수가 그 자리를 이어받을 것 같습니다. XLOOKUP 함수가 VLOOKUP 함수의 단점을 해결하였으므로 XLOOKUP 함수를 사용하게 된다면 아마도 VLOOKUP 함수는 사용하지 않게 될 것 같습니다.
엑셀에서는 함수를 2개 이상 사용하여 원하는 값을 얻은 경우가 많습니다. 앞으로 이런 함수들이 추가될 것으로 예상됩니다. 엑셀의 함수는 점점 진화하고 발전할 것 같다는 생각이 듭니다. 끝
오늘 날짜 및 현재 시간 입력 단축키 (0) | 2020.01.29 |
---|---|
MATCH 함수 (0) | 2020.01.28 |
INDEX 함수 (0) | 2020.01.27 |
상대 참조 및 절대 참조 (0) | 2020.01.25 |
엑셀 VLOOKUP 함수 (1) | 2020.01.23 |