엑셀 함수 iferror(에러 나면 특정 값 반환) & getpivotdata와 조합

엑셀을 사용하다가 오류(#REF! 등)가 나면 난감한데, 오류 값이 있는 셀은 각종 수식(합계, 평균 등)이 먹히지 않기 때문이다. 물론 에러가 난 부분을 고쳐주는 것이 당연한 수순이겠지만, 당연히 나는 오류(?)에 대해 아무 수식도 먹히지 않는 다면 골치 아파진다.

예를 들어, 찾는 항목이 없을 경우도 가정한 작업에서 #REF! 가 나타나면 아무 수식도 걸 수 없어 참으로 난감하다. 물론 값 복사를 한 후 #REF! 부분만 찾아 지워주면 되긴 하는데 로우 데이터가 바뀌면 이 같은 작업을 반복해야 한다. 찾는 값이 없을 때 0을 되돌려주면 편하려만...

그러다가 뭔가 있을 것 같다 찾아보니 IFERROR이라는 함수가 있었다.

함수마법사 검색 결과
IFERROR 함수

에러가 나면 특정 값을 돌려주는 마법 같은 함수. 물론, 정말 문제가 있는데 값을 반환하면 안 되니 조심하기!


<예시>

5개의 목록(빨, 주, 노, 초, 파, 남, 보)이 있고, 3개의 지역(A, B, C)에 목록과 해당 값(개수)이 무작위로 들어 있는 상황.
여기서 핵심은, 각각의 지역에서 값이 없는 목록은 해당 목록 자체가 데이터에 포함되어 있지 않는다는 것.

엑셀에서 iferror와 getpivotdata 함수 사용 예시
IFERROR, GETPIVOTDATA 조합
  • 목록 : 빨주노초파남보 총 7개 항목
  • 지역1 : 5개 항목 존재
  • 지역2 : 4개 항목 존재
  • 지역3 : 5개 항목 존재
  • 총 목록 중에서 피벗(Pivot)에 있는 값(지역별 개수) 도출 =GETPIVOTDATA("개수",D$14,"지역A",$M4)
  • 지역1 : '초, 보' 항목이 없어 #REF! 에러
  • 지역2 : '주, 노, 파' 항목이 없어 #REF! 에러
  • 지역3 : '초, 남' 항목이 없어 #REF! 에러
  • 계 : #REF! 에러가 난 셀이 존재하여 합계(SUM)도 #REF! 에러를 냄
  • IFERROR 함수를 사용해 에러난 경우(찾는 항목 부재) 0을 반환하게 함 =IFERROR(GETPIVOTDATA("개수",D$14,"지역A",$M15), 0)
  • 총목록에서 해당 항목이 없는 경우 0으로 처리되어 합계까지 정상적으로 출력됨
  • 주의 : 정말 오류가 있었는데 값을 반환하면 더 큰 사단이 날 수 있음

일단 이런 식으로 해결하긴 했는데, 비슷한 상황에서 쓸 수 있는 더 좋은 방법이 있는지 잘 모르겠다.


카테고리의 다른 글

  1. 아이튠즈로 아이폰 iOS 업데이트 할 때 저장되는 폴더 위치
  2. 프린터 인쇄 버튼 누르고 출력이 바로 이루어지지 않을 때 (인쇄 딜레이)
  3. 물고기 어항 테스트(FishBowl) AMD 5600x, GTX1060(3GB)
  4. SECOH-QAD 정체는
  5. 물고기 어항 테스트(FishBowl) 아이폰 SE2

댓글 남기기