공부 합시다!/일 잘하는 비결, 엑셀로 능률 높이기

엑셀_IFERROR 함수로 오류 처리 깔끔하게 하기

라리홈 2025. 5. 1. 21:36
728x90
반응형

엑셀_IFERROR 함수로 오류 처리 깔끔하게 하기

엑셀을 사용하다 보면 종종 수식에서 오류값이 발생합니다.
예를 들어, 나누는 값이 0일 경우 #DIV/0!,
참조한 셀에 값이 없거나 잘못된 참조일 경우 #N/A, #REF! 등 다양한 오류가 발생하죠.

문제는 이 오류들이 보기에도 지저분하고,
다른 계산에도 영향을 미칠 수 있다는 점입니다.
이럴 때 깔끔하게 오류를 숨기고 원하는 텍스트나 숫자로 대체해주는 함수가
바로 IFERROR입니다.


| IFERROR 함수란?

IFERROR 함수는 수식에서 오류가 발생했을 경우
미리 지정한 대체값으로 바꿔주는 함수입니다.
오류가 없으면 원래 결과를, 오류가 있으면 다른 값을 반환합니다.


| 사용법

복사편집
=IFERROR(수식, 오류일 때 결과)
  • 수식: 계산하고자 하는 함수 또는 수식
  • 오류일 때 결과: 오류가 났을 때 대신 표시할 값 (문자열, 숫자, 공백 등)

| 예제 1 : 나누기 계산에서 0으로 나눌 때

  A B C
1 매출 건수 건당 매출
2 1000 10 100
3 800 0 오류 발생
4 1200 6 200
 

보통 =A2/B2 로 계산하면
B3가 0일 때 #DIV/0! 오류가 뜨게 됩니다.
하지만 아래처럼 작성하면 오류 없이 깔끔하게 처리할 수 있습니다.

=IFERROR(A2/B2, "-")

 결과: 건수 0일 경우 "-"로 표시


| 예제 2 : VLOOKUP 함수 오류 처리

  A B
1 사번 이름
2 1001 김철수
3 1002 박지은
4 1003 없음
 

사번 1003이 데이터에 없을 경우:

=VLOOKUP(1003, A2:B3, 2, FALSE)

결과: #N/A

하지만 아래처럼 IFERROR로 감싸주면:

=IFERROR(VLOOKUP(1003, A2:B3, 2, FALSE), "정보 없음")

결과: "정보 없음" 으로 깔끔하게 처리됩니다.


| 예제 3 : 문자 입력 시 계산 오류 방지

  A B
1 수량 단가
2 10 500
3 A 600
4 5 없음
=A2*B2

A3에 문자가 들어가면 #VALUE! 오류 발생

아래처럼 IFERROR로 감싸면:

=IFERROR(A2*B2, 0)

오류 발생 시 0으로 처리되어 계산 중단 없이 진행됩니다.


| 예제 4 : 공백 표시하기

오류를 아예 숨기고 싶다면, " " (공백)를 표시하면 됩니다.

=IFERROR(A2/B2, "")

오류 시 셀에 아무것도 보이지 않게 처리


| 예제 5 : 여러 함수와 함께 쓰기

아래는 IF, VLOOKUP, IFERROR를 조합한 예시입니다.

=IFERROR(IF(VLOOKUP(D2, A2:B5, 2, FALSE)>80, "합격", "불합격"), "조회불가")

찾은 값이 80 이상이면 "합격", 아니면 "불합격",
만약 조회할 수 없다면 "조회불가"로 깔끔하게 표시합니다.


| IFERROR vs IF(ISERROR()) 차이

기존에는 아래처럼 복잡한 방식으로 오류를 처리했습니다:

=IF(ISERROR(A2/B2), "-", A2/B2)

하지만 IFERROR는 이를 훨씬 간단하게 만들어줍니다:

=IFERROR(A2/B2, "-")

가독성이 높고 처리도 빠릅니다.


| 실무 활용 예시

  • 0으로 나눌 때 오류 숨기기
  • 누락된 VLOOKUP 결과 처리
  • 서식 불일치 데이터 처리
  • 보고서 표에서 오류값 대신 ‘-’ 또는 ‘확인 필요’로 표시
  • 계산 도중 중단 방지용 방어로직

| 함께 알면 좋은 함수

함수 설명
ISERROR 오류인지 TRUE/FALSE 반환
IF 조건에 따라 다른 값 반환
VLOOKUP 데이터 조회 함수
DIVIDE 나누기 함수 (Power BI 등에서 사용)
 

| 참고 팁

  • 오류값에도 여러 종류가 있습니다: #DIV/0!, #VALUE!, #N/A, #REF! 등
  • IFERROR는 모든 오류를 한꺼번에 처리하기 때문에 간편하지만,
    특정 오류만 처리하고 싶다면 IF(ISNA(...), ...) 등 별도 함수 사용도 고려해보세요.
728x90
반응형