엑셀 VLOOKUP 함수의 완벽한 대체자 XLOOKUP 함수

  • 엑셀

엑셀 좀 사용하는 사람이라면 VLOOKUP 함수에 대해 모를 수가 없다. 그런데 앞으로 VLOOKUP은 역사속으로 사라질지도 모른다.

사실 VLOOKUP은 1985년에 발표된 <Excel 1>부터 포함된 조상급 함수다. 실제로 엑셀에서 SUM, AVERAGE 다음으로 많이 사용되는 함수라고 한다.

그런데 2019년 8월 28일에 Microsoft 공식 블로그에서 VLOOKUP을 완벽히 대체할 수 있는 새로운 함수 XLOOKUP을 소개했다.

링크: https://techcommunity.microsoft.com/t5/Excel-Blog/Announcing-XLOOKUP/ba-p/811376


XLOOKUP 함수의 기능

vlookup은 특정 값을 범위에서 찾아 그 값이 있는 행 또는 열의 항목을 참조한다. 글로 쓰려니 어렵네. 그냥 vlookup(열에서 찾기), hlookup(행에서 찾기) 다 된다고 보면 된다.

XLOOKUP(lookup_value,lookup_array,return_array)

  • lookup_value: 무엇을 찾을지
  • lookup_array: 어디서 찾을지
  • return_array: 무엇을 가져올지

범위만 잘 설정하면 끝이다.

아직 감이 안 온다면 일단 아래 영상을 참고하자.

158453_EXCEL_XLOOKUP_GIF_V08.gif
출처: Microsofe Excel Blog

여기에 추가로 match_modesearch_mode를 인자로 넣어줄 수도 있다.

더 자세한 사용법이 궁금하면 공식 홈페이지 도움말을 읽어보자.

링크: https://support.office.com/ko-kr/article/xlookup-%ED%95%A8%EC%88%98-b7fd680e-6d10-43e6-84f9-88eae8bf5929


그렇다면 엑셀에서 XLOOKUP이라는 새로운 함수를 내놓은 이유가 뭘까? 당연히 VLOOKUP을 사용할 때 이런저런 문제, 사용자가 주의해야 할 점이 있었기 때문이다. (그래서 울며 겨자먹기 식으로 INDEXMATCH를 사용한 복잡한 함수를 써야 할 때도 있었다.)

그러나 이제 XLOOLUP이 우릴 구원하러 왔다.

XLOOKUP은 그동안 VLOOKUP을 사용하며 겪었던 문제를 완벽히 해결해준다.

  1. VLOOKUP은 항상 첫 번째 열을 검색하고 그것의 오른쪽에 위치한 값을 반환한다. 왼쪽에 있는 값을 가져올 방법이 없는 거다. 그러나 XLOOKUP에서는 상하좌우 관계 없이 아무데서나 참조할 수 있다.
  2. VLOOKUP은 반환하고자 하는 열의 번호를 숫자로 입력해야 한다. 그리고 이게 항상 문제가 된다. 왜냐하면 참조 범위 안에서 열을 삽입하거나 삭제하는 경우 VLOOKUP 함수 내에서도 열 번호를 맞추기 위해 직접 수정해줘야 하기 때문이다. 그러나 XLOOKUP 함수는 애초에 범위를 지정해서 참조하므로 참조 범위가 조정되더라도 함수를 직접 손 볼 일이 없다.
  3. VLOOKUP은 값을 찾을 때 기본적으로 ‘정확히 일치’하지 않더라도 유사한 값을 찾는다. 그래서 반드시 마지막에 인자로 FALSE를 넣어주어야 한다. 만약 이걸 빠뜨리면 잘못된 참조를 가져올 수 있다. 그러나 XLOOKUP은 ‘정확히 일치’하는 값을 찾는 게 기본값이다. 그래서 실수 할 일이 없다.
  4. VLOOKUP은 불필요하게 많은 셀을 참조해야 한다. (예를 들면 첫 번째 열에서 값을 찾아서, 저~ 오른쪽 끝에 있는 100번째 열의 값을 가져오려면 그 사이에 있는 98개의 열들도 다 참조 범위에 포함해야 한다.이 얼마나 무식한 짓인가.) 엑셀이 몇 줄 안되면 상관 없지만 만약 데이터가 커지면 괜히 불필요한 계산이 발생하는 셈이기 때문에 괜히 스프레드 시트 성능이 저하될 수 있다. 그러나 XLOOKUP은 검색할 열(또는 행), 참조할 열(또는 행)을 각각 필요한 부분만 지정하면 되기 때문에 이런 문제가 없다.

이 외에도 VLOOKUP은 값을 찾을 때에도 몇가지 제약사항이 있었는데(예를 들면 같은 값이 있으면 무조건 맨 위의 값으로 처리한다든가), XLOOKUPmatch_modesearch_mode를 활용하면 다양한 옵션으로 값을 찾아 가져올 수 있다.


XLOOKUP뿐만 아니라 MATCH 함수의 업그레이드 버전인 XMATCH도 나올 예정이라고 한다.

링크: https://support.office.com/ko-kr/article/xmatch-%ed%95%a8%ec%88%98-d966da31-7a6b-4a13-a1c6-5a33ed6a0312?ui=ko-KR&rs=ko-KR&ad=KR


XLOOKUP 함수는 언제부터 쓸 수 있을까

엑셀 공식 홈페이지에는 이렇게 써있다.

현재 베타이기 때문에 Office Insiders, 오피스 인싸들…? 참가자들만 사용할 수 있다고 한다.

미리 써보고 싶으면 [계정]에 들어가서 [오피스 참가자] 신청을 하면 된다. (난 베타 버전은 잘 안 쓰는 순정파라… 정식 릴리즈 될 때까지 기다릴 예정이다.)

그리고 만약 정식으로 릴리즈 되더라도 오피스 365 구독자만 사용할 수 있다. 설치형 엑셀, 심지어 엑셀 2019 버전을 쓴다고 하더라도 이걸 못 쓴다는 얘기다. 이게 말이 되나…

난 회사에서 오피스 365를 쓰고 있어서 문제가 없긴 하지만(데헷), 만약 다른 사람과 파일을 주고 받으면 호환성 문제가 발생할 수밖에 없다. 결국 그냥 나 혼자 작업할 때만 쓸 수 있는 함수가 되어버리는 건데… 빨리 다른 설치형 엑셀에도 이 기능을 제공하도록 업데이트 했으면 좋겠다.

이제 VLOOKUP은 그만 쓰고,
XLOOKUP으로 광명 찾자.

추천 글

댓글 남기기