LBtools

VLOOKUP 오류(#N/A) 안 뜨게 하는 법 — 엑셀·구글시트 공통

사무약 4분

한눈에 보기

  • =IFERROR(VLOOKUP(...), 표시할 값)으로 VLOOKUP 전체를 감싸면 #N/A 대신 원하는 문구가 나와요. 엑셀과 구글시트 문법이 같아요.
  • IFERROR는 #N/A뿐 아니라 다른 오류도 함께 가려버리니, #N/A만 정확히 잡고 싶으면 IFNA를 쓰세요.
  • 값이 분명 있는데도 #N/A가 뜬다면, IFERROR로 가리기 전에 찾는 값의 철자나 공백부터 확인하세요.
목차 (5)

네, VLOOKUP 수식 전체를 IFERROR로 한 번 감싸면 돼요. =IFERROR(VLOOKUP(...), "없음")처럼 쓰면 찾는 값이 없을 때 #N/A 대신 지정한 문구가 나와요. 엑셀과 구글시트에서 함수 이름도 인수 순서도 똑같이 동작하니, 이 글 하나로 양쪽을 같이 보면 돼요. 플랫폼마다 갈리는 부분은 아래에서 따로 짚을게요.

함수 구조는 =IFERROR(값, 오류일 때 표시할 값) 이렇게 두 부분이에요. 첫 번째 자리에 VLOOKUP 수식을 통째로 넣고, 두 번째 자리에 오류가 났을 때 대신 보여줄 값을 넣으면 돼요. 아래 예제로 확인해볼게요.

A2:C4는 제품코드별 가격표예요. E2에 표에 없는 코드(A105)를 입력하면 F2에 #N/A 대신 '없음'이 표시돼요.

F2fx=IFERROR(VLOOKUP(E2,A2:C4,3,0),"없음")
ABCDEF
1제품코드제품명가격찾을 코드조회 결과
2A101무선마우스15000A105없음
3A102키보드32000
4A103모니터암45000

그대로 복사해서 값만 바꿔 쓰세요

=IFERROR(VLOOKUP(찾을 값, 범위, 열 번호, 0), "표시할 값")

한글로 적힌 자리는 직접 바꿔 넣어야 하는 값이에요. 복사한 뒤 자기 파일의 범위·조건으로 고쳐서 쓰세요.

IFERROR가 다른 오류까지 다 가려버리지 않나요?

흔히 놓치는 부분이 있어요. IFERROR는 #N/A뿐 아니라 #REF!, #VALUE! 같은 다른 종류의 오류까지 전부 잡아서 지정한 값으로 바꿔버려요. 그래서 범위를 잘못 지정했거나 열 번호를 틀리게 넣는 실수를 해도 오류 메시지 없이 그냥 '없음'만 나와서, 수식 자체가 잘못됐다는 걸 눈치채지 못하고 넘어갈 수 있어요. #N/A만 정확히 잡고 다른 오류는 그대로 보고 싶다면 IFERROR 대신 IFNA를 쓰면 돼요: =IFNA(VLOOKUP(...), "없음").

그럼 IFERROR로 감싸기 전에 뭘 확인해야 하나요?

실무 팁은, IFERROR로 감싸기 전에 원래 #N/A가 왜 뜨는지 한 번은 확인해보는 거예요. 값이 정말 없어서 뜬 정상적인 결과인지, 아니면 찾는 값 앞뒤에 보이지 않는 공백이 섞여 있거나 조회 범위를 잘못 잡아서 뜬 오류인지 구분하지 않고 바로 IFERROR로 덮어버리면, 데이터가 잘못된 것도 모른 채 그대로 넘어가는 경우가 많아요.

빈칸처럼 보이게 하고 싶을 때

결과를 아예 빈칸처럼 보이게 하고 싶다면 두 번째 자리에 빈 문자열("")을 넣으면 돼요. 화면에는 빈칸처럼 보이지만 실제로는 수식이 만든 빈 문자열이 들어있는 상태인데, COUNTBLANK로 세면 이것도 빈 셀로 잡혀요(수식이 만든 빈 문자열도 빈 칸으로 세는 건 엑셀·구글시트 모두 동일해요). 자세한 내용은 엑셀 빈 셀(빈칸) 개수 세기에서 다뤘어요.

엑셀만: XLOOKUP을 쓸 수 있다면 IFERROR가 필요 없어요

최신 버전 엑셀(Microsoft 365)에서 XLOOKUP을 쓸 수 있다면 이야기가 달라져요. XLOOKUP에는 '못 찾았을 때 보여줄 값'을 받는 인수가 함수 안에 들어 있어서, =XLOOKUP(찾을값, 찾을범위, 가져올범위, "없음") 한 줄이면 바깥을 IFERROR로 감쌀 필요가 없어요.

수식이 짧아지는 것보다 중요한 장점이 하나 있어요. 이 인수는 '못 찾은 경우'에만 반응해요. 위에서 짚은 것처럼 IFERROR는 범위를 잘못 잡거나 열 번호를 틀린 실수까지 싸잡아 덮어버리는데, XLOOKUP의 이 인수는 그런 오류를 가리지 않아서 수식이 잘못됐으면 잘못됐다고 그대로 보여줘요. 두 함수가 어디서 갈리는지는 엑셀 XLOOKUP 함수, VLOOKUP과 뭐가 다른가요?에서 다뤘어요.

구글시트만: IMPORTRANGE로 가져온 표에서는 특히 조심해야 해요

구글시트 쪽에만 있는 함정도 하나 있어요. 다른 파일을 IMPORTRANGE로 가져온 범위를 VLOOKUP으로 조회하는 경우예요. 가져오기가 아직 끝나지 않았거나 권한 승인을 기다리는 동안 그 범위는 오류 값으로 차 있는데, 바깥을 IFERROR로 감싸두면 그 상태가 전부 '없음'으로 보여요.

데이터가 없는 게 아니라 아직 안 온 건데, 화면만 봐서는 둘이 구분되지 않는다는 게 문제예요. 시트를 열자마자 전부 '없음'으로 나온다면 잠시 기다렸다 다시 보거나, IFERROR를 잠깐 떼고 원본 범위가 제대로 들어왔는지부터 확인해보세요. 연결과 권한 승인 과정은 다른 시트·파일 데이터 불러오는 법 — IMPORTRANGE에서 다뤘어요.

VLOOKUP 기본 사용법부터 다시 보고 싶다면 엑셀 VLOOKUP 함수 사용법을 참고하세요. 구글시트에서 빈 셀을 세는 방법은 구글시트 빈 셀(빈칸) 개수 세기에 따로 정리해뒀어요.

작성·검수

LONGBRIGHT — 광고 마케팅 현업에서 일하며 LBtools를 혼자 만들고 운영해요. 함수 동작과 메뉴 설명은 각 제조사의 공식 문서와 실제 동작을 기준으로 확인해요.

발행
최종 확인

잘못된 내용을 발견하셨다면 문의로 알려주세요. 확인해서 고치고 이 날짜를 갱신해요. 운영 원칙도 공개해두었어요.

이런 글도 함께 보면 좋아요