엑셀 오류 ― #N/A가 말해주는 것

값이 없을 때 생기는 기본 원리

by 데이터위자드
엑셀NA오류원인.png


엑셀을 다루다 보면 누구나 한 번쯤은 낯선 친구를 마주합니다.
셀 안에 덩그러니 찍힌 글자 하나.

#N/A

그저 “찾을 게 없어요” 하고 조용히 알려주는 신호일 뿐이죠.
함수가 어떤 데이터를 불러오려 했는데,
그 데이터가 어딘가 엇나가 버린 순간,
엑셀은 이 작은 표식 하나로 사실을 알려줍니다.



1. 사라진 값을 찾아서


가장 흔한 이유는 단순합니다.
찾고자 하는 값이 정말로 존재하지 않기 때문이죠.

VLOOKUP, MATCH, XLOOKUP 같은 함수는 철저합니다.
표 안 어딘가에 이름 하나라도 틀리면, 절대 그냥 넘어가지 않습니다.
‘홍길동’과 ‘홍길동 ’ — 눈에 보이지 않는 공백 하나가 그 둘을 갈라놓습니다.
엑셀은 그것을 냉정하게 “다른 값”으로 판단합니다.



2. 숫자와 글자 사이


엑셀은 숫자와 문자를 철저히 구분합니다.
눈에 보이는 ‘123’이 같아도,
하나는 숫자이고 하나는 문자열이라면,
함수는 두 값을 결코 같은 것으로 인정하지 않습니다.

실무에서 이런 경우가 자주 있습니다.
웹에서 불러온 데이터,
또는 다른 프로그램에서 붙여넣은 값.
보이는 건 같아도 속은 다릅니다.



3. 보이지 않는 흔적


복사와 붙여넣기는 편리하지만, 때로는 불청객을 데려옵니다.
눈에 보이지 않는 스페이스, 특수문자, 깨진 공백들.
이 조용한 노이즈들이 수식의 결과를 흔듭니다.

그럴 땐 TRIM, CLEAN

같은 함수가 필요합니다.


불필요한 공백을 지워서 데이터의 숨결을 정리해 주는 역할이죠.

한 줄의 정리가 전체의 정확도를 바꿉니다.



4. 질서가 무너졌을 때


근사값 검색을 하는 함수들은 정렬된 세상을 전제로 합니다.

하지만 누군가가 그 순서를 어지럽히면,
엑셀은 길을 잃고 #N/A 를 내뱉습니다.



5. 범위가 어긋난 순간


참조 구간이 한 칸이라도 삐끗하면
엑셀은 그걸 전혀 다른 세상으로 인식합니다.
특히 VLOOKUP은 ‘첫 번째 열’이라는 규칙에 매우 엄격하죠.
찾는 값이 첫 열이 아니라면,
엑셀은 아무리 검색해도 결과를 찾지 못합니다.



6. 오류가 오류를 낳을 때


수식을 겹겹이 쌓다 보면, 어느 한 단계에서 생긴

#N/A 가 다음 단계로 그대로 전해집니다.



7. 정제되지 않은 데이터의 그림자


보이지 않지만 존재하는 공백, 한글과 영문의 미세한 차이,
전각문자와 반각문자. 이 사소한 어긋남들이 실무 데이터를 무겁게 만듭니다.

결국 #N/A는 이런 불일치들의 끝에서 나타납니다.



8. 엑셀이 알려주는 대화법


“오류가 아니에요, 그냥 못 찾았어요.”
엑셀은 그렇게 말하고 있습니다.

그럴 땐

IFERROR나 IFNA

로 대답을 돌려줄 수 있죠.


=IFNA(VLOOKUP(...), "미등록")


하지만 진짜 해결은 오류를 가리는 게 아니라
왜 그 값이 없었는지 찾아내는 일입니다.
숫자와 문자, 공백과 정렬, 범위와 규칙.
이 모든 걸 다시 점검할 때, 엑셀은 비로소 제대로 답을 줍니다.

작가의 이전글엑셀 vs 구글시트 – 속도, 함수, 자동화의 차이