가장 많이 쓰는 엑셀 함수 20가지 · 20개 중 12번째 튜토리얼
엑셀 IFERROR 함수 사용법
IFERROR와 IFNA로 #DIV/0!, #N/A 같은 오류 값 대신 원하는 값이나 메시지를 표시하고, 진짜 실수는 가리지 않는 방법을 알아봐요.
- 난이도
- 중급
- Time
- 14분 분량
- 수정:
- 적용 대상:
- Microsoft 365용 Excel, Excel 2021, Excel 2019, 웹용 Excel

배울 내용
- 수식을 IFERROR로 감싸서 오류 대신 원하는 값 표시하기
- 대체 값으로 0, 빈 문자열, 메시지 중 알맞은 것 고르기
- IFNA로 조회 수식의 #N/A만 처리하기
- IFERROR가 진짜 실수를 가리는 경우 알아차리기
시작하기 전에
함수 연습장
IFERROR 함수를 실제 시트에서 연습해 보세요
엑셀처럼 생긴 시트에 수식을 입력하면 계산 과정을 단계별로 보여 줘요. 무료이고 가입도 필요 없어요.
수식이 지극히 평범한 이유로 오류를 낼 때가 있어요. 빈 셀로 나누거나, 아직 목록에 없는 제품을 찾을 때처럼요. IFERROR를 쓰면 오류 대신 무엇을 보여 줄지 직접 정할 수 있어요. 0이나 빈칸, 짧은 메시지를 표시해서 보고서가 #DIV/0!과 #N/A로 뒤덮이지 않게 하는 거죠. 편리하지만 꼭 봐야 할 오류까지 숨겨 버리기도 해요. 그러니 특정한 오류가 날 걸 알고 있는 곳에만 쓰세요.
함수 구조
=IFERROR(value, value_if_error)- value는 검사할 수식이에요.
B2/C2나VLOOKUP수식 같은 거죠. - value_if_error는 value에서 오류가 났을 때 돌려줄 값이에요. 숫자, 따옴표로 감싼 텍스트, 빈 셀처럼 보이게 하는
"", 또는 다른 수식을 넣을 수 있어요.
value가 제대로 계산되면 IFERROR는 그 결과를 그대로 돌려줘요. 어떤 오류든(#N/A, #VALUE!, #REF!, #DIV/0!, #NUM!, #NAME?, #NULL! 등) 나면 대신 value_if_error를 돌려줘요.
=IFERROR(B4/C41,"판매 없음"2)B4/C4value: 계산해 볼 수식. C4의 판매 수량이 0이면 #DIV/0!이 나요"판매 없음"value_if_error: 수식에서 오류가 나면 대신 표시할 내용
결과 열의 #DIV/0! 바꾸기
아래 시트에는 제품 다섯 개의 매출과 판매 수량이 있어요. D열의 평균 단가는 매출을 판매 수량으로 나눈 값이에요. 형광펜은 아직 하나도 팔리지 않아서, 그냥 =B4/C4라고 쓰면 0을 0으로 나누게 되고 #DIV/0!이 나와요.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 제품 | 매출 | 판매 수량 | 평균 단가 | 조회 | 결과 | |
| 2 | 공책 | 540 | 120 | 4.5 | 제품 | 풀 | |
| 3 | 볼펜 | 360 | 300 | 1.2 | 판매 수량 | ||
| 4 | 형광펜 | 0 | 0 | #DIV/0! | 제품 | 스테이플러 | |
| 5 | 스테이플러 | 180 | 15 | 12 | 판매 수량 | ||
| 6 | 가위 | 260 | 40 | 6.5 |
첫 번째 결과 셀을 클릭하세요
D2를 클릭하세요.
=IFERROR( 와 수식을 입력하세요
=IFERROR(를 입력하고 이어서 나눗셈B2/C2를 입력한 다음 쉼표를 입력하세요.대체 값을 입력하고 Enter 키를 누르세요
0을 입력하고 Enter를 누르세요. D2에는 그냥 나눴을 때와 같은 4.5가 표시돼요. 540 ÷ 120은 문제없이 계산되니까요.=IFERROR(B2/C2,0)수식을 아래로 채우세요
D2 오른쪽 아래 모서리의 채우기 핸들(fill handle)을 D6까지 끌어내리거나, D2:D6을 선택하고 Ctrl+D를 누르세요. 다른 제품은 전과 똑같이 단가가 표시되고, 형광펜은
#DIV/0!대신 0이 표시돼요.A B C D E F G 1 제품 매출 판매 수량 평균 단가 조회 결과 2 공책 540 120 4.5 제품 풀 3 볼펜 360 300 1.2 판매 수량 4 형광펜 0 0 0 제품 스테이플러 5 스테이플러 180 15 12 판매 수량 6 가위 260 40 6.5 IFERROR를 쓰면 D4에 오류 대신 0이 표시돼요. 다른 행은 그대로예요.
오류 대신 무엇을 보여 줄지 고르기
대체 값은 마음대로 정할 수 있지만, 다른 수식이 이 결과를 쓴다면 무엇을 고르느냐가 중요해요.
| 대체 값 | 셀에 보이는 모습 | 이후 수식에서의 처리 |
|---|---|---|
0 | 0 | 진짜 숫자예요. AVERAGE와 COUNT에 포함돼요 |
"" | 빈 셀 | 텍스트예요. SUM, AVERAGE, COUNT가 건너뛰어요 |
"판매 없음" | 메시지 | 텍스트예요. ""처럼 건너뛰어요 |
D4가 0이면 =AVERAGE(D2:D6)은 4.84를 돌려줘요. 다섯 값의 합 24.2를 5로 나눈 값이죠. D4가 ""나 "판매 없음"이면 같은 수식이 6.05를 돌려줘요. 진짜 단가 네 개만 4로 나누기 때문이에요. 하나도 팔리지 않은 제품에는 평균 단가라는 게 없으니, 여기서는 0보다 메시지가 더 정직해요.
=IFERROR(B4/C4,"판매 없음")조회 결과가 없을 때 처리하기
조회 수식은 찾는 값이 표에 없으면 #N/A를 돌려줘요. 목록에 풀이 없으니, G2에 풀이 있을 때 =VLOOKUP(G2,A2:C6,3,FALSE)는 #N/A를 돌려줘요. IFERROR로 감싸서 대신 메시지를 표시해 보세요.
=IFERROR(VLOOKUP(G2,A2:C6,3,FALSE),"없음")| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 제품 | 매출 | 판매 수량 | 평균 단가 | 조회 | 결과 | |
| 2 | 공책 | 540 | 120 | 제품 | 풀 | ||
| 3 | 볼펜 | 360 | 300 | 판매 수량 | 없음 | ||
| 4 | 형광펜 | 0 | 0 | 제품 | 스테이플러 | ||
| 5 | 스테이플러 | 180 | 15 | 판매 수량 | |||
| 6 | 가위 | 260 | 40 |
XLOOKUP을 쓴다면 이럴 때 IFERROR가 필요 없어요. =XLOOKUP(G2,A2:A6,C2:C6,"없음")처럼 네 번째 인수가 같은 일을 해 주거든요.
IFERROR와 IFNA 중 무엇을 쓸까요?
IFNA는 인수 두 개가 IFERROR와 같지만 #N/A만 처리해요. 조회 수식에서 값을 찾지 못했을 때 나는 오류죠. 다른 오류는 모두 그대로 표시돼요.
=IFNA(VLOOKUP(G4,A2:C6,3,FALSE),"없음")G4에 스테이플러가 있으면 이 수식은 판매 수량인 15를 돌려줘요. 목록에 없는 제품이면 없음을 돌려줘요.
둘의 차이는 수식 자체에 실수가 있을 때 드러나요. 아래 조회 수식은 열이 세 개뿐인 표에서 4번째 열을 달라고 해서 #REF!가 나요.
=IFERROR(VLOOKUP("볼펜",A2:C6,4,FALSE),"없음")볼펜은 분명히 목록에 있는데도 결과는 없음이에요. IFERROR가 망가진 수식을 그럴듯한 답으로 바꿔 버린 거예요. 같은 조회 수식을 IFNA로 감싸면 #REF!가 그대로 보이니까, 문제를 알아채고 열 번호를 고칠 수 있어요.
| 처리하는 오류 | 이럴 때 쓰세요 | |
|---|---|---|
IFERROR | 모든 오류 | 0으로 나누기처럼 특정 오류가 날 걸 아는 계산 |
IFNA | #N/A만 | VLOOKUP, MATCH, INDEX와 MATCH를 쓴 조회 |
| XLOOKUP의 네 번째 인수 | "찾지 못함"만 | XLOOKUP을 쓴 조회 |
조건을 검사하는 IF | 없음: 원인을 직접 검사해요 | C4=0처럼 원인을 확인할 수 있을 때 |
실제 활용 사례
예산 사용률 구하기
한 달 예산과 실제 지출을 비교하고 있어요. 새로 만든 선물 분류는 지출은 있는데 예산이 아직 0이라서, 예산으로 나누면 #DIV/0!이 나와요.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 분류 | 예산 | 지출 | 사용률 |
| 2 | 월세 | 1,200 | 1,200 | 100% |
| 3 | 식비 | 400 | 436 | 109% |
| 4 | 여가비 | 150 | 96 | 64% |
| 5 | 선물 | 0 | 45 | 예산 없음 |
| 6 | 여행 | 300 | 0 | 0% |
D2에 아래 수식을 입력하고 D6까지 채우세요.
=IFERROR(C2/B2,"예산 없음")식비는 109%예요(436 ÷ 400). 예산을 넘었다는 건 꼭 알아야 할 정보죠. 선물은 #DIV/0! 대신 예산 없음이 표시돼서 무엇을 고쳐야 하는지 알 수 있어요. 여행은 예산은 있고 지출이 아직 없어서 0 ÷ 300이 문제없이 계산되고 0%가 표시돼요. IFERROR는 나눗셈이 실패할 때만 끼어들어요.
지금까지 본 시험의 평균
성적표에 시험이 세 번 있는데, 모든 학생이 세 번 다 본 건 아니에요. AVERAGE는 빈 셀을 건너뛰지만, 점수가 하나도 없는 학생에게는 #DIV/0!을 돌려줘요.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | 학생 | 시험 1 | 시험 2 | 시험 3 | 평균 |
| 2 | 민아 | 82 | 90 | 86 | |
| 3 | 도윤 | 75 | 81 | 78 | |
| 4 | 서연 | 점수 없음 | |||
| 5 | 유나 | 88 | 92 | 96 | 92 |
E2에 아래 수식을 입력하고 E5까지 채우세요.
=IFERROR(AVERAGE(B2:D2),"점수 없음")민아는 점수가 두 개라서 E2는 그 두 개만 평균을 내요. 86이에요(82 + 90을 2로 나눈 값). 도윤의 두 점수 평균은 78, 유나의 세 점수 평균은 92예요. 서연은 점수가 없어서 AVERAGE가 나눌 수가 없으니, IFERROR가 오류 대신 점수 없음을 표시해요. 여기에 0을 쓰면 낙제 점수처럼 보이니까 메시지가 더 정직한 선택이에요.
작년 대비 성장률
성장률은 올해 매출에서 작년 매출을 뺀 값을 작년 매출로 나눠서 구해요. 올해 출시한 제품은 작년 매출이 없어서 0으로 나누게 돼요.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 제품 | 작년 | 올해 | 성장률 |
| 2 | 공책 | 500 | 600 | 20% |
| 3 | 볼펜 | 800 | 720 | -10% |
| 4 | 플래너 | 0 | 350 | 신제품 |
| 5 | 스티커 | 200 | 260 | 30% |
D2에 아래 수식을 입력하고 D5까지 채우세요.
=IFERROR((C2-B2)/B2,"신제품")공책은 20% 성장했고(500에서 100 증가), 볼펜은 -10%, 스티커는 30%예요. 플래너는 350을 0으로 나눌 수 없으니 IFERROR가 신제품을 표시해요. 예상되는 오류가 B열의 0뿐이라면 =IF(B2=0,"신제품",(C2-B2)/B2)도 같은 결과를 내면서, 다른 오류는 그대로 보여 줘요.
가격을 찾아 주문 금액 계산하기
주문서에서 코드마다 가격표의 가격을 찾아 수량을 곱해요. 가격표에 없는 코드는 표시해 두되, 다른 문제는 여전히 오류로 보여야 해요.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | 코드 | 수량 | 금액 | 코드 | 가격 | |
| 2 | P-102 | 10 | 12 | P-101 | 4.5 | |
| 3 | P-104 | 2 | 24 | P-102 | 1.2 | |
| 4 | P-107 | 3 | 코드 확인 | P-104 | 12 | |
| 5 | P-101 | 4 | 18 | P-105 | 6.5 |
C2에 아래 수식을 입력하고 C5까지 채우세요.
=IFNA(VLOOKUP(A2,$E$2:$F$5,2,FALSE)*B2,"코드 확인")P-102는 1.2라서 10개면 12예요. P-107은 E2:E5에 없어서 VLOOKUP이 #N/A를 돌려주고, 곱셈도 그 오류를 그대로 넘기고, IFNA가 코드 확인을 표시해요. IFNA는 #N/A만 처리해요. 누군가 수량 열에 "두 개"라고 입력하면 그 줄에는 엉뚱한 메시지가 아니라 #VALUE!가 표시돼요. IFERROR를 썼다면 이 실수도 코드 확인으로 보였을 거예요.
피해야 할 실수
- 봐야 할 오류까지 숨기기. 함수 이름의 오타(
#NAME?), 삭제된 열(#REF!), 숫자 열에 섞인 텍스트(#VALUE!)가 모두 IFERROR 뒤에 숨어 버려요. 수식을 먼저 만들고, 제대로 동작하는지 확인한 다음 IFERROR를 더하세요. - 합계를 바꿔 버리는 0. 대체 값 0은 평균과 개수에 포함돼요. "결과 없음"을 0으로 세면 안 된다면
""나 메시지를 쓰세요. - 따옴표 없는 텍스트.
=IFERROR(B4/C4,판매 없음)은#NAME?을 돌려줘요. 따옴표가 없으면 엑셀이 판매 없음을 텍스트가 아니라 이름으로 읽기 때문이에요. 텍스트는 큰따옴표로 감싸세요. - 한 부분만 실패할 수 있는데 수식 전체를 감싸기.
=IFERROR(VLOOKUP(G2,A2:C6,3,FALSE)*B2,0)에서는 어디서 어떤 오류가 나든 0이 돼요. 값이 없을 수 있는 부분이 조회뿐이라면 조회만 감싸세요.
연습
연습
판매 보고서의 오류 정리하기
아래 시트를 사용하세요. 강조된 셀을 클릭하고, 시트 위의 입력줄에 수식을 입력한 다음 Enter를 누르세요. 그다음 엑셀에서 직접 해 보세요.
- 이번 달에 산 물건 다섯 가지를 적고, 각각 쓴 금액과 산 횟수를 입력하세요. 횟수 하나는 0으로 두세요.
- 금액을 횟수로 나누는 열을 추가하고
#DIV/0!이 나오는 걸 확인하세요. - 수식을
""를 넣은IFERROR로 감싸 보고, 다음에는0을 넣어 감싸 보세요. 그때마다 그 열의AVERAGE를 비교해 보세요.
직접 해 보기4개 중 0개 완료
- D2에 매출을 판매 수량으로 나누고, 나눗셈에서 오류가 나면 0이 표시되게 해 보세요.
- D4에 형광펜의 매출을 판매 수량으로 나누고, #DIV/0! 대신 판매 없음이 표시되게 해 보세요.
- G3에 G2에 있는 제품의 판매 수량을 찾고, 목록에 없으면 없음이 표시되게 해 보세요.
- G5에 G4에 있는 제품의 판매 수량을 찾되, IFNA로 #N/A만 처리해 보세요.
점선으로 표시된 셀을 클릭하고, 입력줄에 수식을 쓴 다음 Enter를 누르세요.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 제품 | 매출 | 판매 수량 | 평균 단가 | 조회 | 결과 | |
| 2 | 공책 | 540 | 120 | 제품 | 풀 | ||
| 3 | 볼펜 | 360 | 300 | 판매 수량 | |||
| 4 | 형광펜 | 0 | 0 | 제품 | 스테이플러 | ||
| 5 | 스테이플러 | 180 | 15 | 판매 수량 | |||
| 6 | 가위 | 260 | 40 |
관련 자료
도움이 되었나요? 틀린 부분을 발견하셨나요? 피드백 보내기 · admin@arumsoft.com