엑셀 | Spreadsheet

특정 조건에 일치하는 데이터 찾기 vlookup 함수

PM Paul 2024. 8. 7. 13:04

이전 글에서 xlookup 함수를 소개드리긴 했지만, 아직까지도 "엑셀=vlookup이다"라고 생각하면서 이전 함수를 그대로 사용하고 계신 분들이 꽤 있을 것 같네요.

엑셀이나 스프레드시트에 익숙하지 않으신 분들은 vlookup 함수에 대해서 들어보고, 알아보고 싶으신 분들이 있을 것 같아서 기초를 설명드리고 함수의 한계에 대해서도 얘기드리고자 합니다.

vlookup 함수

반응형

 

 

vlookup 함수 소개

=VLOOKUP(찾는 값, 찾는 범위, 구하고 싶은 값이 있는 행 위치, 일치 여부)
  • 찾는 값: 특정 텍스트를 입력해도 되고, 셀을 입력해도 됨 (텍스트는 입력 시, "" 사용)
  • 찾는 범위: 찾고자 하는 데이터가 포함된 범위 (위 찾는 값이 포함되어 있는 범위)
  • 구하고 싶은 값이 있는 행 위치: 찾는 범위 
  • 일치 여부: 정확히 일치하는 값은 0, 유사한 값은 1로 입력 (일반적으로 0 사용)
728x90

 

 

[기초] 일치하는 데이터 찾기 

이전에 예시로 활용했던 SKU 매출 데이터로 함수를 설명하겠습니다.

vlookup 함수

 

위와 같은 기본 데이터가 있다는 가정 하에 SKU가 유니크한 값이므로 해당 값을 통해서 재고 상태를 파악하는 시트를 만들어 볼게요.

 

1) 아래와 같이 새로운 시트에서 테이블을 만들어 주세요.

vlookup 함수

 

2) SKU는 직접 입력할 수도 있겠지만, 원본 데이터에서 리스트를 가져오기 위해서 아래와 같은 방식을 활용해 볼게요.

A2 셀을 클릭하고, [우클릭 - View more cell actions - Data validation]을 클릭하고, [+ Add Rule]을 클릭해 주세요.

vlookup 함수

 

3) Criteria에서 [Dropdown (from a range)]를 클릭하고, 범위를 지정해 주세요.

vlookup 함수

 

4) sku_sample_data 시트의 A2:A로 설정했습니다.

vlookup 함수

 

5) 이제 리스트에 있는 SKU를 자유롭게 선택할 수 있습니다. (직접 입력도 가능)

vlookup 함수

 

6) A5 셀을 클릭하고 vlookup 함수를 입력해 주세요.

=vlookup($A$2

vlookup 함수

찾는 값은 SKU가 들어갈 A2셀을 절대값으로 설정했어요.

 

7) 그다음 찾는 범위가 있는 원본 데이터 시트를 클릭하고, 전체 범위를 선택해 주세요.

=vlookup($A$2, sku_sample_data!$A:$H

vlookup 함수

찾는 범위A부터 H행으로 선택했습니다.

 

8) 다음으로 재고 상태를 파악하기 위함이니, 재고 상태가 들어있는 셀이 있는 행의 위치값을 세주세요.

vlookup 함수

SKU가 있는 행을 시작으로 좌측부터 위치값을 세어서 8을 입력해 줍니다.

=vlookup($A$2, sku_sample_data!$A:$H, 8

 

9) 마지막으로 완전히 일치하는 값을 찾기 위해 0을 입력해 주세요.

=vlookup($A$2, sku_sample_data!$A:$H, 8, 0)

 

10) 완성

vlookup 함수

 

 

vlookup 함수의 한계

기본적인 사용방법은 예시를 통해서 충분히 익히실 수 있다고 생각됩니다.

다만 vlookup 함수는 아래와 같은 한계가 명확합니다.

  • 기준이 되는 데이터의 좌측 값은 불러올 수 없습니다.
    • 예를 들어 SKU가 적힌 A행 좌측에 있는 행의 데이터를 불러오고 싶다고 할 경우, vlookup으로는 불가능합니다.
  • 데이터 테이블이 클 경우, 원하는 데이터의 위치를 계산하기 어렵습니다.
    • 행의 위치를 하나씩 세야 하기 때문에 행의 수가 많은 데이터에서는 위치 순서를 틀리는 경우가 종종 있습니다.
  • 원본 데이터에 데이터가 추가될 경우, 함수를 수정해야 합니다. 
    • 위와 동일한 이유인데, 위치 순서를 숫자로 적다 보니 원본 데이터 중간에 데이터 행이 추가될 경우 수식이 깨집니다.

 

그래서 xlookup 함수를 사용하는걸 추천드리며, 다음에는 조금 더 복잡한 조건일 때의 데이터를 찾을 수 있는 Index-Match 함수를 설명드리도록 하겠습니다.