구글 스프레드시트 VLOOKUP #N/A 오류 원인과 IFERROR 해결 공식 가이드

1. VLOOKUP 수식에서 #N/A 오류가 발생하는 3가지 핵심 원인

수식 문법을 올바르게 적은 것 같아도 #N/A가 출력되는 이유는 데이터 엔진의 엄격한 일치성 검증 메커니즘 때문입니다.

  • 기준열(Index) 위치 오류: VLOOKUP은 구조적으로 참조 범위(Range)의 무조건 ‘첫 번째 열’에서만 검색 키를 찾습니다. 찾으려는 고유 식별자(사번, 제품코드 등)가 참조 범위의 2번째나 3번째 열에 있거나 가져올 값보다 오른쪽에 있지 않다면 값을 찾지 못합니다.
  • 보이지 않는 앞뒤 공백 및 줄바꿈: 육안으로는 A101로 똑같아 보여도 한쪽 셀에 공백이 포함되어 A101 (끝에 띄어쓰기) 상태라면 컴퓨터는 서로 완전히 다른 텍스트로 인식합니다.
  • 데이터 타입(서식) 불일치: 한쪽은 ‘숫자(Number)’ 형식(12345)이고, ERP 등에서 다운받은 다른 쪽은 작은따옴표가 붙은 ‘문자열(Text)’ 형식('12345)일 경우 매칭되지 않고 에러를 반환합니다.
  • 근사치 정렬 옵션(is_sorted) 누락: 마지막 인수에 FALSE(또는 0)를 생략하면 기본값인 TRUE(근사치 검색)로 작동하여 범위가 오름차순 정렬되어 있지 않을 때 잘못된 값을 반환하거나 오류가 발생합니다.

2. VLOOKUP 기본 수식 정석 구문 점검

오류를 수정하기 전에 공식 표준 문법에 맞게 인수가 채워졌는지 점검해야 합니다.

=VLOOKUP(검색_키, 참조_범위, 반환할_열_인덱스, [정렬_여부])

검색_키: 찾고자 하는 기준 값 또는 셀 주소입니다 (예: A2).

참조_범위: 데이터를 조회할 전체 표 영역입니다. 반드시 첫 번째 열이 검색_키와 매칭되는 열이어야 합니다 (예: E2:G100 또는 E:G).

반환할_열_인덱스: 참조 범위 내에서 가져올 데이터가 위치한 열 번호입니다. 범위의 첫 번째 열이 1입니다.

정렬_여부: 실무에서는 거의 모든 경우 FALSE 또는 0을 입력하여 정확히 일치하는 값만 찾도록 강제해야 합니다.

3. IFERROR 함수를 결합한 완벽 오류 복구 공식

데이터베이스에 실제로 등록되지 않은 신규 거래처나 퇴사자 정보인 경우 수식이 정상이어도 #N/A가 발생할 수밖에 없습니다. 이때 전체 수식을 IFERROR로 감싸면 보고서의 가독성을 즉시 회복할 수 있습니다.

공식 1: 에러 셀을 깔끔하게 빈칸(공백)으로 숨기기

값 매칭에 실패했을 때 지저분한 #N/A 대신 깔끔한 공백을 출력하여 전체 보고서 서식을 유지합니다.

=IFERROR(VLOOKUP(A2, E:G, 2, FALSE), “”)

공식 2: 오류 대신 ‘미등록’ 또는 ‘확인 필요’ 문구 띄우기

누락된 데이터임을 팀원이나 담당자에게 명확히 알려야 할 때 유용합니다.

=IFERROR(VLOOKUP(A2, E:G, 2, FALSE), “미등록”)

4. 실무 빈출 오류 원천 차단: TRIM 및 VALUE 결합 공식

1) 숨은 띄어쓰기 제거: TRIM 결합

텍스트 복사/붙여넣기 과정에서 생긴 앞뒤 유령 공백을 실시간으로 제거하며 매칭합니다.

=IFERROR(VLOOKUP(TRIM(A2), E:G, 2, FALSE), “미등록”)

2) 숫자/문자열 서식 불일치 해결: VALUE 또는 TO_TEXT 결합

  • 검색 키는 문자열인데 참조 표는 숫자일 때: VALUE 함수로 숫자로 강제 변환

=IFERROR(VLOOKUP(VALUE(A2), E:G, 2, FALSE), “서식확인”)

검색 키는 숫자인데 참조 표는 문자열(텍스트)일 때: TO_TEXT 함수로 텍스트로 강제 변환

=IFERROR(VLOOKUP(TO_TEXT(A2), E:G, 2, FALSE), “서식확인”)

5. VLOOKUP 주요 오류 원인 및 해결 함수 비교 요약

에러 증상 및 원인주된 발생 원인해결 방법 / 적용 함수즉각 해결 확률
기준열 위치 오류검색 키가 참조 표의 첫 열에 없음참조 범위를 첫 열 기준으로 재지정하거나 XLOOKUP 사용40%
미등록 데이터 존재원본 표에 해당 데이터 자체가 없음=IFERROR(VLOOKUP(...), "") 공백 처리30%
유령 공백(띄어쓰기)텍스트 앞뒤 불필요한 공백 포함=TRIM(셀 주소) 중첩 적용20%
숫자/텍스트 서식 충돌한쪽만 문자열로 서식 지정됨=VALUE() 또는 =TO_TEXT() 변환10%

함께 읽어두면 좋은 IT 실무 가이드:

윈도우 11 원격 데스크톱 연결 오류 해결법: RDP 방화벽과 IP 설정 3단계 

6. 자주 묻는 질문 (FAQ)

Q1. VLOOKUP 대신 XLOOKUP을 쓰면 #N/A 오류를 더 쉽게 해결할 수 있나요?

네, 최신 구글 스프레드시트와 엑셀에서는 XLOOKUP을 적극 권장합니다. XLOOKUP은 기준열이 어디에 있든(왼쪽에 있든 오른쪽에 있든) 자유롭게 데이터를 찾을 수 있으며, 자체적으로 4번째 인수에 if_not_found 옵션을 내장하고 있어 IFERROR를 따로 쓰지 않고도 =XLOOKUP(A2, E:E, F:F, "미등록") 형태로 훨씬 간단하게 오류를 예외 처리할 수 있습니다.

Q2. IFERROR를 쓰면 수식 오탈자(#NAME?, #VALUE!)까지 숨겨져서 위험하지 않나요?

좋은 지적입니다. IFERROR는 함수명 오타나 괄호 누락 같은 심각한 구문 오류까지 전부 가려버릴 수 있습니다. 오직 데이터 미등록으로 인한 #N/A 에러만 선택적으로 제어하고 싶다면 IFERROR 대신 IFNA 함수를 사용하는 것이 실무적으로 훨씬 안전합니다 (=IFNA(VLOOKUP(...), "")).

Q3. 수식은 맞는데 아래로 드래그(자동 채우기)하면 참조 범위가 밀리면서 오류가 납니다.

수식 안의 참조 범위가 상대 참조로 되어 있기 때문입니다. 범위를 선택한 뒤 F4 키를 눌러 =VLOOKUP(A2, $E$2:$G$100, 2, FALSE)처럼 열과 행 앞에 달러 기호($)를 붙여 절대 참조로 고정해 주어야 아래로 수식을 복사해도 참조 영역이 흐트러지지 않습니다.

Leave a Comment