Today's Agenda

IFERROR함수를 이용해서 에러 없는 깨긋한 화면을 만들 수 있음


엑셀을 사용하면서 #DIV/0!, #N/A 등의 에러가 발생하지 않도록 하는 것이 최선일 것 입니다. 하지만 실무를 하다보면 정황상 에러가 나올 수 밖에 없는 경우가 있습니다. 


예를 들어 평균판가를 구한다고 해볼까요? 매출액을 수량으로 나누어 주기 때문에, 수량이 0이 되면 #DIV/0!에러가 나오게 되겠죠. 또 어떤 경우에는 수량을 측정하지 못 하는 경우도 있을 것 입니다. 


어느 김밥집의 매출을 분석해본다고 했을 때, 잡채 세트는 팔리지 않아서... 기타 서비스는 수량을 측정할 수 없어서 부득이하게 #DIV/0!이 나오는데, 엑셀을 보는 입장에서는 뭔가 틀린 것 같고, 화면이 마음에 들지 않을 것입니다. 


마음 같아서는 6행과 7행만 평균판가를 구하지 않도록 함수를 지워버리고 싶지만, 그렇게 되면 잡채 판매량이 생기게 되었을 때는 다시 함수를 살려줘야 하는 등 상황에 따라서 사람이 손을 대주어야 하기 때문에 자동화라는 엑셀의 기본 방향과는 거리가 생기게 됩니다. 


이럴 때 IFERROR라는 일종의 예외처리 함수를 사용해주시면 간단하게 해결이 가능합니다. 


우리가 결국 원하는 것은 0으로 나누었을 때는 아무것도 나타나지 않거나, "해당 사항 없음" 또는  "Not Available"값이 표시가 되는 것입니다. 그럼 IFERROR함수를 이용해서 그렇게 만들어 볼까요?

E6셀에는 IFERROR(D6/C6*10000, )

E7셀에는 IFERROR(D7/C7*10000,"Not Available")

이렇게 입력해봅니다. 


 E6셀은 '-'가 표시되고 있고, E7셀은 "Not Avaiable"이 표시되고 있습니다. (화면에는 영문이 오타가 났네요. ^^;; ) 


함수가 매우 직관적이기 때문에 이해하시기는 어렵지 않으실 것입니다. 

IFERROR( 에러가 날 수 있는 내용, 에러가 났을 때의 입력 값) 이렇게 되는 것이고, 일단 원하는 함수를 막 입력하신 후에 추후에 IFERROR함수를 붙이는 경우도 많기 때문에 원하는 내용을 IFERROR함수로 감싸는 듯 작성하시면 됩니다. 


지난 포스팅에서 vlookup함수에서 에러 나는 유형을 말씀 드렸는데(http://consultoffice.tistory.com/37 참조)

vlookup함수도 IFERROR함수와 함께 써주시면 매우 훌륭한 엑셀작업을 하실 수 있습니다. 



개콘도 끝난 일요일 밤에 쓰는 포스팅이다 보니, 급하게 마무리 하게 되는 것 같네요. 

언제든 잘 이해 안 가시는 점 있으시면 댓글 주시면 더 보강하여 답변 드리겠습니다. 



AND