본문 바로가기

생산성 높이기

엑셀 VLOOKUP 함수 사용법 : #N/A 나오는 이유?

개인적으로 엑셀에서 많이 사용하는 함수 중 하나인 VLOOKUP 함수에 대해 알아보겠습니다.

VLOOKUP 함수는 지정한 데이터를 기준으로 특정 범위에서 원하는 항목을 찾을 때 사용하는 함수입니다.

 

예를 들어보겠습니다. 아래의 두개의 표를 보면, 표 1에 채워넣어야할 값들이 표2에 정리되어 있는 것을 알 수 있습니다.

표 1에서 A1의 직급이 "과장"이니, 표2에서 "과장"에 해당하는 연차(16일)와 성과금(250만원)을 찾아 넣어야 합니다.

이런 경우, VLOOKUP 함수를 이용하면 여러번 작업할 필요없이 한 번에 값을 입력할 수 있습니다.

엑셀 VLOOKUP 함수 예시 1

우선 VLOOKUP 함수는 아래의 구문 형태로 작성하면 됩니다.

 

VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

VLOOKUP(찾을 값, 값을 찾을 범위, 변환하려는 값이 있는 열 위치, 일치옵션)

 

찾을 값은 내가 VLOOKUP 함수를 통해, 값을 찾을 범위의 첫번째 열에서 찾고자 하는 값입니다.

예시에서 찾을 값은 "과장"이고, 값을 찾을 범위는 표2 입니다.

 

그리고 변환하려는 값이 있는 열 위치는 내가 찾고자하는 값이 들어있는 열입니다.

예시에서는 "연차"를 찾을 때는 2, "성과금"을 찾을 때는 3이 됩니다.

 

그리고 마지막 일치옵션은 유사일치 허용여부를 결정하는 겁니다.

이 자리에 0 또는 FALSE를 입력하면 정확한 일치만을 변환하고, 1 또는 TRUE를 입력하면 유사 일치도 변환합니다.

실무에서는 0을 입력하기를 추천드립니다. 

 

그럼, 함수를 작성해보겠습니다.

우선 과장인 A1에 해당하는 연차를 찾기 위해, 해당 셀(D3)에 =VLOOKUP(C3,$G$2:$I$9,2,0) 라는 함수를 입력했습니다.

 

엑셀 VLOOKUP 함수 예시 2

=VLOOKUP(

  C3 : 찾고자하는 기준이 되는 값(과장) 입니다.

  $G$2:$I$9 : 값을 찾을 범위(표1) 입니다. 아래 A2~B3의 값도 자동채우기로 채우기 위해 F4를 눌러 절대범위로 지정했습니다.

  2 : 표1의 1열(직급)에서 해당 값을 찾고 2열(연차)를 반환하라는 의미입니다.

  0 : 정확히 일치만 허용한다는 의미 입니다.

  )

엑셀 VLOOKUP 함수 예시 3

자동채우기로 모두 해당 연차를 채워주었습니다. 오류 없이 모두 해당하는 값을 변환하였습니다.

 


#N/A 오류 이유, 해결방법

VLOOKUP 함수에서 #N/A가 오류는 범위 설정 때문에 주로 발생합니다.

먼저 위의 예시에서 언급한 바 와같이 첫번째 행에서 절대범위로 지정안하고 자동 채우기를 사용할 경우 오류가 발생할 수 있습니다.

 

엑셀 VLOOKUP 함수 #N/A 오류 1

예시 이미지를 보시면, A6 번부터 오류가 났는데요 해당 셀부터 검색 범위가 잘못 지정되었기 때문입니다.

해당 셀의 함수를 살펴 보면, 아래와 같이 검색값(대리)이 포함되지 않은 G7:I14를 검색 범위로 두고 있습니다.

자동채우기를 사용하실 경우 첫번째 행에서 검색 범위를 절대주소로 지정해두어야 오류를 줄일 수 있습니다.

 

엑셀 VLOOKUP 함수 #N/A 오류 2

#N/A 오류는 대부분 값을 찾을 범위, 변환하려는 값이 있는 열 위치 설정을 잘못한 경우 발생합니다.

찾을 값을 찾지 못하거나 변환하려는 값이 없어 발생한 오류이니, 오류 발생 시 해당 부분을 잘 체크해보시기 바랍니다.