엑셀 IFERROR 사용법 — 오류 코드별 진단부터 안전한 처리까지

최종 업데이트 2026-07-20

엑셀 보고서에서 셀마다 #N/A, #DIV/0!, #VALUE! 같은 오류가 뒤섞여 있으면 그 자체로 신뢰도가 떨어져 보입니다. IFERROR는 이런 오류를 원하는 값으로 대체해주는 함수입니다. 하지만 무조건 오류를 숨기기 전에, 먼저 '왜' 오류가 나는지부터 정확히 진단하는 것이 순서입니다.

실무에서 자주 만나는 오류 코드 진단표

오류 코드발생 상황실무 예시
#N/AVLOOKUP·XLOOKUP·MATCH가 값을 못 찾음사번 A105가 명단에 없는데 조회함
#DIV/0!0 또는 빈 칸으로 나눔신규 지점이라 전월 매출이 0
#VALUE!텍스트와 숫자를 함께 연산'서울'+100 같은 잘못된 계산
#REF!참조하던 셀·행·열이 삭제됨수식이 참조하던 열을 통째로 지움
#NAME?함수 이름 오타 또는 구버전 미지원 함수XLOOKUP을 엑셀 2019에서 사용

IFERROR 기본 구조

=IFERROR(원래수식, 오류일때보여줄값)
A열(사번)B열(이름)C열(부서)
A102김민수영업1팀
A103이서연총무팀

F2에 명단에 없는 'A999'를 입력했다고 가정하면, 아무 처리 없이는 #N/A가 그대로 노출됩니다. IFERROR로 감싸면 다음처럼 원하는 문구로 대체됩니다.

=IFERROR(VLOOKUP(F2, A:C, 2, 0), "명단에 없음")

F2가 'A999'라면 결과는 '명단에 없음'이라는 텍스트가 표시됩니다. 반면 F2가 'A102'라면 정상적으로 '김민수'가 나옵니다. 즉 IFERROR는 정상 결과에는 아무 영향을 주지 않고, 오류가 났을 때만 대체값을 보여줍니다.

IFERROR vs IFNA — 무엇이 다른가

항목IFERRORIFNA
처리 대상모든 종류의 오류(#N/A, #VALUE!, #REF! 등 전부)#N/A 오류만
장점어떤 오류든 한 번에 안전하게 처리찾기 실패만 정확히 구분해 처리
단점수식 자체의 진짜 버그도 함께 가려질 수 있음#VALUE!, #REF! 등은 그대로 노출됨
추천 상황최종 보고서용 화면 정리VLOOKUP·MATCH 등 조회 함수 전용
⚠️

IFERROR는 편리하지만 모든 오류를 무조건 숨겨버립니다. 수식 자체를 잘못 짜서 나는 #REF!나 #VALUE!까지 가려지면, 정작 고쳐야 할 실수를 발견하지 못한 채 잘못된 결과가 보고서에 그대로 실릴 수 있습니다. 개발·점검 단계에서는 IFERROR 없이 원래 오류를 먼저 확인하고, 최종 배포 단계에서만 씌우는 것을 권장합니다.

실무에서 바로 쓰는 패턴 모음

  • 찾기 실패를 빈칸으로: =IFERROR(VLOOKUP(F2, A:C, 2, 0), "")
  • 0으로 나누기 방지: =IFERROR(B2/A2, 0)
  • 찾기 실패만 구분(다른 오류는 그대로 노출): =IFNA(VLOOKUP(F2, A:C, 2, 0), "없음")
  • 여러 함수를 중첩한 수식 전체를 감싸기: =IFERROR(INDEX(A:A, MATCH(F2, C:C, 0)), "확인필요")
💡

오류를 빈칸("")으로 바꾸면 화면은 깔끔하지만, 그 셀을 다시 합계나 평균 계산에 쓰면 텍스트로 인식되어 계산에서 제외되거나 오류가 재발할 수 있습니다. 이후 계산에 쓸 셀이라면 "" 대신 0을 기본값으로 넣는 것이 더 안전합니다.

오류를 진단하는 순서 (수식이 복잡할 때)

  1. 1IFERROR를 잠시 떼어내고 원래 수식만 남겨서, 실제로 어떤 오류 코드가 나오는지 먼저 확인합니다.
  2. 2오류 코드에 따라 위 진단표에서 원인 후보를 좁힙니다.
  3. 3수식이 여러 함수로 중첩돼 있다면, 수식 셀을 선택한 뒤 수식 탭의 '수식 계산' 기능으로 어느 함수 단계에서 오류가 시작되는지 확인합니다.
  4. 4원인을 찾아 근본적으로 해결한 뒤에도 예외 상황(값이 아예 없는 경우 등)이 남아 있다면, 그때 IFERROR나 IFNA로 마지막 안전장치를 씌웁니다.

추가로 자주 나는 오류 — #NUM!, #REF!

오류 코드실무에서 자주 나는 상황처리 방법
#NUM!재무 함수(RATE, IRR 등)의 반복 계산이 수렴하지 않음IFERROR로 감싸거나 추정값(guess) 인수 조정
#REF!다른 열을 삭제해 참조가 끊김IFERROR로는 근본 해결이 안 되므로 참조를 다시 지정해야 함

특히 #REF! 오류는 IFERROR로 감싸도 '겉으로만' 문제가 사라진 것처럼 보일 뿐, 참조가 끊긴 근본 원인은 그대로 남아 있습니다. #REF!가 뜨면 IFERROR를 씌우기 전에 반드시 수식이 참조하던 셀·열이 실제로 삭제됐는지부터 확인하고 원본을 복구하는 것이 우선입니다.

실무 패턴 — 중첩 IFERROR로 여러 소스 순서대로 시도하기

메인 명단에서 못 찾으면 보조 명단에서 한 번 더 찾아보고, 그래도 없으면 '확인필요'를 표시하고 싶은 경우 IFERROR를 중첩해서 여러 단계로 시도할 수 있습니다.

=IFERROR(VLOOKUP(F2, 메인명단, 2, 0), IFERROR(VLOOKUP(F2, 보조명단, 2, 0), "확인필요"))

메인명단에서 F2 값을 찾지 못하면 두 번째 IFERROR가 보조명단에서 다시 찾고, 거기서도 못 찾으면 최종적으로 '확인필요'가 표시됩니다. 여러 소스를 순서대로 확인해야 하는 실무 상황에서 유용한 패턴입니다.

오류 없이 안전한 수식, AI로 한 번에 완성하기 →

함께 보면 좋은 글