계산 결과가 정상적으로 나오지 않으면 표가 지저분해지고, 다른 수식에도 오류가 이어질 수 있습니다. 이럴 때 사용하는 대표적인 함수가 IFERROR입니다.
IFERROR를 사용하면 수식에 오류가 발생했을 때 0, 빈칸, 하이픈, 원하는 안내 문구 등으로 대신 표시할 수 있습니다. 다만 오류의 원인을 고치는 함수는 아니므로 수식 자체가 정상적으로 작성되었는지 먼저 확인하는 것이 중요합니다.
1. 엑셀 IFERROR 함수는 무엇인가요?
IFERROR는 특정 수식을 계산했을 때 오류가 발생하면 사용자가 지정한 다른 값을 표시하고, 오류가 없으면 원래 계산 결과를 그대로 보여주는 함수입니다.
예를 들어 어떤 수식의 결과가 정상적으로 100이면 100을 표시하고, 계산 과정에서 오류가 발생하면 "계산 오류"라는 문구를 표시하도록 만들 수 있습니다.
• VLOOKUP 결과가 없을 때 "없음" 표시
• XLOOKUP에서 찾는 값이 없을 때 안내 문구 표시
• 0으로 나누었을 때 오류 대신 "-" 표시
• 계산 오류가 발생하면 빈칸으로 표시
• 보고서에서 오류값 대신 원하는 문구 표시
Microsoft 공식 문서에 따르면 IFERROR는 #N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL! 등의 오류를 검사할 수 있습니다.
2. IFERROR 기본 문법과 사용 방법
IFERROR의 기본 문법은 매우 간단합니다.
두 번째 부분이 핵심입니다. 첫 번째 인수의 수식에 오류가 없으면 원래 결과를 표시하고, 오류가 발생하면 두 번째 인수에 입력한 값을 표시합니다.
=IFERROR(A2/B2,"계산 오류")
A2를 B2로 나눈 결과가 정상이라면 계산 결과가 표시되고, B2가 0이라서 #DIV/0! 오류가 발생한다면 "계산 오류"가 표시됩니다.
이처럼 기존 수식을 IFERROR 함수 안에 넣는 형태로 생각하면 쉽게 이해할 수 있습니다.
3. #N/A 오류를 "없음"으로 바꾸는 방법
IFERROR가 특히 유용한 경우가 바로 조회 함수에서 #N/A가 발생할 때입니다.
예를 들어 VLOOKUP으로 상품코드를 검색했는데 해당 상품이 표에 없으면 #N/A가 표시될 수 있습니다. Microsoft에서도 VLOOKUP, XLOOKUP, MATCH 등에서 조회값을 찾지 못하면 #N/A가 발생할 수 있다고 설명합니다.
위 수식에서 상품코드를 찾지 못하면 #N/A가 표시됩니다. 이때 IFERROR를 붙이면 됩니다.
이제 검색 결과가 있으면 상품명이 표시되고, 찾지 못하면 "없음"이라는 문구가 표시됩니다.
실무에서 조회표를 만들 때 오류 메시지 대신 사용자가 바로 이해할 수 있는 문구를 보여주고 싶다면 매우 편리한 방법입니다.
4. #VALUE! 오류 대신 원하는 결과 표시하기
#VALUE!는 수식에서 예상하지 않은 값이나 데이터 형식 등이 사용될 때 나타날 수 있는 오류입니다.
이 오류가 발생하는 수식을 IFERROR로 감싸면 오류 대신 원하는 결과를 표시할 수 있습니다. Microsoft 역시 #VALUE! 오류가 발생하는 셀에 IFERROR를 추가해 다른 값으로 표시할 수 있다고 안내합니다.
위 수식에서 계산 결과가 정상이라면 합계가 표시되고, 오류가 발생하면 0이 표시됩니다.
보고서에서 오류값 대신 숫자 0으로 통일해야 하는 경우 사용할 수 있습니다.
숫자 0은 실제 계산 결과가 0인 경우와 구분되지 않을 수 있습니다. 오류가 발생한 것을 명확하게 표시해야 한다면 "오류 확인"처럼 문구를 넣는 방법도 있습니다.
5. 오류가 나오면 빈칸으로 표시하는 방법
업무용 표나 보고서에서는 오류 메시지 대신 아무것도 표시하지 않는 것이 더 깔끔할 때가 있습니다.
이때는 두 번째 인수에 큰따옴표 두 개를 넣으면 됩니다.
조회값이 존재하면 결과가 표시되고, 오류가 발생하면 빈칸처럼 보이게 됩니다.
상품 목록이나 직원 조회표처럼 일부 데이터가 아직 입력되지 않은 상태에서 #N/A가 계속 표시되는 것을 막고 싶을 때 유용합니다.
Microsoft 공식 문서에서도 오류 발생 시 아무것도 표시하지 않으려는 경우 ""를 사용할 수 있다고 설명합니다.
6. 0으로 나누는 오류를 깔끔하게 처리하기
엑셀에서 숫자를 0으로 나누면 #DIV/0! 오류가 발생합니다.
예를 들어 판매금액이 A2에 있고 판매수량이 B2에 있을 때 평균 판매가격을 계산한다고 가정해 보겠습니다.
B2가 0이라면 #DIV/0!이 나타납니다.
이때 IFERROR를 이용하면 오류 대신 하이픈을 표시할 수 있습니다.
결과가 정상적으로 계산되면 가격이 표시되고, 나눌 수 없는 상황에서는 -가 표시됩니다.
판매관리표나 실적표처럼 계산 결과가 많은 문서에서 오류 표시를 깔끔하게 정리할 때 활용할 수 있습니다.
7. IF 함수와 함께 사용하면 더 편리합니다
IFERROR는 IF 함수처럼 다른 함수와 함께 사용할 수 있습니다.
예를 들어 조건에 따라 계산한 결과에서 오류가 발생하는 경우 IFERROR로 전체 계산식을 감쌀 수 있습니다.
먼저 IF 함수가 조건에 따라 계산하고, 계산 과정에서 오류가 발생하면 IFERROR가 마지막에 지정한 0을 표시하는 방식입니다.
Microsoft에서도 복잡한 IF 수식에 IFERROR를 추가하여 오류 발생 시 지정된 값을 반환하는 방식을 예로 설명하고 있습니다.
IF → 조건을 판단
IFERROR → 오류가 발생했는지 확인하고 대체값 표시
따라서 두 함수의 역할을 구분해서 생각하면 복잡한 수식을 만들 때도 이해하기 쉽습니다.
8. IFERROR와 IFNA의 차이도 알아두기
엑셀에서는 IFERROR와 비슷하게 사용할 수 있는 IFNA 함수도 있습니다.
둘의 가장 큰 차이는 처리하는 오류 범위입니다.
여러 종류의 오류를 모두 처리할 때 사용
IFNA
#N/A 오류만 처리할 때 사용
예를 들어 VLOOKUP이나 XLOOKUP에서 조회 결과가 없을 때 발생하는 #N/A만 별도로 처리하고 싶다면 IFNA를 사용할 수 있습니다.
반면 수식에서 발생할 수 있는 여러 종류의 오류를 한꺼번에 처리하려면 IFERROR가 더 적합합니다.
어떤 오류든 전부 같은 결과로 바꾸고 싶지 않다면 오류 종류에 맞는 함수를 선택하는 것이 중요합니다.
9. IFERROR를 사용할 때 주의해야 할 점
IFERROR는 편리하지만 오류를 자동으로 고쳐주는 함수는 아닙니다.
예를 들어 원래 수식에 잘못된 범위를 지정했는데 IFERROR로 오류를 빈칸으로 바꾸면 문제가 해결된 것처럼 보일 뿐 실제 수식은 여전히 잘못되어 있을 수 있습니다.
① 원래 수식이 올바른지 확인
② 조회 범위가 정확한지 확인
③ 셀 주소가 잘못되지 않았는지 확인
④ 숫자와 텍스트 형식이 맞는지 확인
⑤ 오류가 발생하는 것이 정상적인 상황인지 확인
Microsoft도 IFERROR는 오류 자체를 해결하는 것이 아니라 다른 값으로 바꾸는 기능이므로, 오류를 숨기는 것이 적절한 상황인지 먼저 확인하는 것이 중요하다고 안내합니다.
특히 중요한 업무용 계산에서는 오류를 무조건 빈칸으로 만드는 것보다 원인을 먼저 확인하는 것이 안전합니다.
10. 실무에서 바로 사용하는 IFERROR 예제
자주 사용하는 형태를 몇 가지로 정리하면 다음과 같습니다.
=IFERROR(A2/B2,"")
② 오류가 발생하면 0
=IFERROR(A2/B2,0)
③ 오류가 발생하면 하이픈
=IFERROR(A2/B2,"-")
④ 조회값이 없으면 "없음"
=IFERROR(VLOOKUP(A2,$F$2:$H$100,2,FALSE),"없음")
⑤ 조회값이 없으면 "확인 필요"
=IFERROR(XLOOKUP(A2,F:F,G:G),"확인 필요")
이처럼 IFERROR는 기존 수식의 앞뒤 구조를 크게 바꾸지 않고 오류가 발생했을 때 어떤 결과를 보여줄지만 지정할 수 있다는 점이 장점입니다.
자주 묻는 질문 Q&A
Q1. IFERROR에서 #N/A만 처리할 수 있나요?
가능하지만 IFERROR는 #N/A뿐 아니라 #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL! 등 여러 오류를 처리합니다. #N/A만 별도로 처리하고 싶다면 IFNA를 사용하는 방법도 있습니다.
Q2. IFERROR로 오류를 없애면 수식도 고쳐지나요?
아닙니다. IFERROR는 오류를 수정하는 함수가 아니라 오류가 발생했을 때 다른 결과를 표시하는 함수입니다. 원래 수식이 잘못되어 있다면 그 문제는 그대로 남아 있습니다.
Q3. 오류가 나오면 빈칸으로 만들고 싶어요.
두 번째 인수에 큰따옴표 두 개를 입력하면 됩니다. 예를 들어 =IFERROR(A2/B2,"")처럼 작성하면 오류 발생 시 빈칸처럼 표시할 수 있습니다.
Q4. VLOOKUP에서 #N/A가 계속 나오는데 IFERROR를 사용해도 되나요?
가능합니다. 다만 먼저 조회값이 실제 원본 표에 존재하는지, 숫자와 텍스트 형식이 일치하는지, 조회 범위가 올바른지 확인하는 것이 좋습니다. 확인 후 정상적으로 발생할 수 있는 미조회 상황을 정리할 때 IFERROR를 사용하는 것이 적합합니다.
Q5. IFERROR에서 오류 대신 "없음"이나 "확인 필요" 같은 글자를 넣어도 되나요?
가능합니다. 두 번째 인수에 원하는 텍스트를 큰따옴표로 입력하면 됩니다. 예를 들어 =IFERROR(A2/B2,"확인 필요")처럼 사용할 수 있습니다.
마무리
엑셀 IFERROR 함수는 수식에서 발생하는 #N/A, #VALUE!, #DIV/0! 등 오류를 원하는 결과로 대신 표시할 때 사용하는 함수입니다.
기본 구조인 =IFERROR(수식, 오류일 때 표시할 값)만 기억해도 다양한 상황에 활용할 수 있습니다.
특히 VLOOKUP에서 값을 찾지 못했을 때 "없음" 표시하기, 계산 오류를 빈칸으로 바꾸기, 0으로 나눌 때 하이픈 표시하기처럼 실무 문서를 깔끔하게 만들 때 유용합니다.
다만 IFERROR는 오류의 원인을 해결하는 함수가 아니라는 점은 꼭 기억해야 합니다. 중요한 계산에서는 먼저 원래 수식이 정상적으로 작성되었는지 확인한 뒤 IFERROR를 추가하는 것이 안전합니다.

댓글 쓰기