엑셀 ISERR 함수는 값 또는 수식에 #N/A 오류를 제외하고 오류가 있는지 확인할 때 사용합니다. #N/A 오류는 찾는 값이 없을 때 발생하므로 ISERR 함수를 사용하면 찾는 값이 없을 때 오류로 처리하지 않고 오류를 그대로 표시할 수 있습니다.
ISERR 함수가 인식할 수 있는 오류는 #N/A 오류를 제외하고 다음 8개 종류입니다.
#DIV/0!, #NAME?, #NULL!, #NUM!, #REF!, #VALUE!, #SPILL!, #CALC!
각각의 오류에 대한 자세한 내용은 다음 링크를 참고하세요.
[엑셀 오류 유형(#DIV/0!, #N/A, #NAME?, #REF! 등)과 해결방법]
구문(Syntax)
ISERR(value)
#N/A 오류를 제외하고 값에 오류가 있으면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환한다.
인수 : value – 오류인지 확인할 값
사용 예
1) 오류인지 판단하여 TRUE, FALSE 표시
아래에서 [C10] 셀에 입력된 '=VLOOKUP(1,B6:D6,1,FALSE)' 수식은 범위에서 찾는 값 1이 없으므로 #N/A 오류가 발생합니다.
기능이 비슷한 ISERROR 함수로 [C10] 셀을 확인해보면 #N/A를 오류로 인식해서 TRUE를 반환합니다.
=ISERROR(C10) => TRUE
ISERR 함수는 #N/A를 오류로 인식하지 않으므로 FALSE를 반환합니다.
=ISERR(C10) => FALSE
2) 찾는 값이 없을 때 처리
아래 [B27] 셀에는 사원 정보에 없는 사번 9999가 입력되어 있습니다.
VLOOKUP 함수로 사번 9999에 해당하는 이름을 찾으면 찾는 값이 없으므로 #N/A 오류가 발생합니다. ISERR 함수로 VLOOKUP 함수의 결과를 확인해 보면 오류로 인식하지 않습니다.
27행에 입력된 수식을 하나씩 확인해 보겠습니다.
[C27] 셀=VLOOKUP(B27,B18:D22,2,FALSE) => #N/A
사번 9999는 사원 정보에 없으므로 '찾는 값이 없음'을 뜻하는 #N/A 오류 발생 [D27] 셀
=ISERR(VLOOKUP(B27,B18:D22,2,FALSE)) => FALSE
ISERR 함수는 #N/A를 오류로 인식하지 않으므로 FALSE를 반환 [E27] 셀
=IF(ISERR(VLOOKUP(B27,B18:D22,2,FALSE)),"**오류**",VLOOKUP(B27,B18:D22,2,FALSE)) => #N/A
ISERR 함수는 #N/A를 오류로 인식하지 않으므로 IF 함수로 확인하면 #N/A 오류를 그대로 반환
3) 수식에 오류가 있을 때 처리
아래 [B28] 셀에는 사원 정보에 있는 사번 1003이 입력되어 있지만 [C28] 셀에 수식이 잘못 입력되어 있습니다. ISERR 함수로 오류 처리를 해보겠습니다.
28행에 입력된 수식을 하나씩 확인해 보겠습니다.
[C28] 셀=VLOOKUP(B28,B18D22,2,FALSE)=> #NAME?
VLOOKUP 함수의 두 번째 인수가 'B18:D22' 대신 'B18D22'로 잘못 입력됨, 중간에 콜론(:)이 누락되어 범위 인식이 안되므로 #NAME? 오류 발생 [D28] 셀
=ISERR(VLOOKUP(B28,B18D22,2,FALSE)) => TRUE
ISERR 함수는 '#N/A 오류를 제외한 오류'는 오류로 인식하므로 TRUE를 반환 [E28] 셀
=IF(ISERR(VLOOKUP(B28,B18D22,2,FALSE)),"**오류**",VLOOKUP(B28,B18D22,2,FALSE)) => '**오류**'
ISERR 함수는 #NAME? 를 오류로 인식하고 IF 함수로 확인하면 오류가 맞으므로 '**오류**'를 반환
[ 정보 함수 ]