Excel & IT Info

아이엑셀러 닷컴, 엑셀러TV

Excel

전문가처럼 Excel에서 유출 오류 해결하는 방법

권현욱(엑셀러) 2024. 9. 25. 14:39
반응형

들어가기 전에

최신 버전의 Excel은 동적 배열(dynamic arrays)을 지원합니다. 동적 배열을 사용하면 이웃 셀을 자동으로 계산된 정보로 채워줍니다. 하지만 동적 배열을 사용할 때 유출(SPILL) 오류가 발생하는 경우가 있습니다. 유출 오류가 발생하는 이유와 대처 방법을 소개합니다.

권현욱(엑셀러) | 아이엑셀러 닷컴 대표 · Microsoft Excel MVP · Excel 솔루션 프로바이더 · 작가

이미지: 아이엑셀러 닷컴


※ 이 글은 아래 기사 내용을 토대로 작성되었습니다만, 필자의 개인 의견이나 추가 자료들이 다수 포함되어 있습니다.

  • 원문: Resolve a Spill Error in Excel Like a Pro Using These Tips
  • URL: https://www.groovypost.com/howto/resolve-spill-error-excel-pro-tips/

유출 오류가 발생하는 일반적인 원인

Microsoft Excel에서 #SPILL! 오류가 발생하면 일반적으로 수식이 스프레드시트에서 계산한 결과로 여러 셀을 채울 수 없기 때문입니다. 문제는 거의 대부분 Excel에서 데이터를 채우려는 셀을 채우지 못하게 하는 무언가(유출 범위라고 함)가 있기 때문입니다. 여기에는 몇 가지 원인이 있으며 Excel은 셀이 채워지지 않도록 차단하는 요소를 알려주기 위해 최선을 다합니다.

 

이미지: groovypost

 

노란색 삼각형 경고 아이콘을 클릭하면 일반적으로 이러한 Excel 유출 오류 중 하나가 표시됩니다.

  • 유출 범위가 비어 있지 않음
  • 유출 범위에 병합된 셀이 포함되어 있음
  • 표의 유출 범위
  • 유출 범위를 알 수 없음
  • 유출 범위가 너무 큼

 

가장 쉬운 문제: 유출 범위가 비어 있지 않음

아마도 가장 쉽게 해결할 수 있는 문제는 "유출 범위가 비어 있지 않습니다(Spill range isn’t blank)" 오류일 것입니다. Excel은 셀의 데이터를 덮어쓰지 않으므로 유출 범위의 셀 중 하나에 이미 값이 있는지 확인하세요.

 

이미지: groovypost

 

이렇게 하려면 먼저 수식 셀을 클릭합니다. Excel은 주위에 파선 테두리가 있는 유출 범위를 표시합니다. 가장 간단한 경우에는 어떤 셀이 비어 있지 않은지 즉시 확인할 수 있으며 해당 셀을 지울 수 있습니다.

 

이미지: groovypost

 

스프레드시트가 너무 크거나 공백과 같이 보이지 않는 문자가 있어 셀 중 하나가 비어 있지 않은 경우에는 도움이 되지 않을 수 있습니다. 다행히 Excel에서 도움을 받을 수 있습니다. 오류 대화 상자에서 방해가 되는 셀 선택을 클릭하면 Excel에서 비어 있지 않은 셀을 강조 표시해 줍니다.

 

이미지: groovypost

 

오류가 발생한 셀을 비우면 데이터가 완전히 채워진 것을 확인할 수 있습니다.

 

이미지: groovypost

유출 범위에서 병합된 셀을 수정하는 방법

다음으로, 유출 범위 내에서 실수로 셀을 병합했을 수 있습니다. 이 경우 오류 대화 상자에 "유출 범위에 셀이 병합되었습니다."라는 메시지가 표시됩니다. 동적 수식이 셀 범위 전체에 값을 유출하려면 셀 병합을 해제해야 합니다.

 

이미지: groovypost

 

병합된 셀을 찾는 가장 쉬운 방법은 오류 대화 상자에서 방해가 되는 셀 선택을 클릭하는 것입니다. 완료되면 리본에서 셀 병합 버튼을 클릭하여 셀 병합을 해제할 수 있습니다. 병합이 완료되면 데이터가 원하는 대로 표시됩니다.

 

이미지: groovypost

 

유출 범위가 표에 있는 경우 수행 방법

Microsoft만 알고 있는 어떤 이유로, Excel 스프레드시트 내의 동적 수식과 표는 서로 잘 맞지 않습니다. 동적 수식을 사용하여 표의 셀을 채우려고 하면 실패합니다. 출력을 다른 곳에 표시하거나 표를 범위로 변환해야 합니다.

 

이미지: groovypost

 

알 수 없는 유출 범위를 해결하는 방법

다음은 "유출 범위를 알 수 없습니다."라는 까다로운 오류입니다. 이 오류는 Excel에서 배열에 설정할 크기를 결정할 수 없을 때 발생합니다. 이 오류는 일반적으로 동적 함수에서 RANDARRAY, RAND 또는 RANDBETWEEN과 같은 휘발성 함수(volatile function)를 사용할 때 발생합니다.

기본적으로 이러한 무작위 함수는 스프레드시트의 계산 사이에 배열이 변경되는 결과를 초래합니다. 이 문제를 해결하는 유일한 방법은 계산 사이에 배열의 크기를 변경하지 않는 다른 수식을 사용하는 것입니다.

Excel에서 유출 범위가 너무 큰 오류를 수정하는 방법

마지막으로, 예를 들어 열에 있는 각 셀의 백분율을 계산하는 수식을 사용하는 데 익숙할 수 있습니다. 예를 들어 =B:B*10%와 같은 수식은 Excel 2019 및 이전 버전에서는 완벽하게 작동합니다.

동적 수식을 지원하는 최신 버전의 Excel에서는 동일한 수식에 "유출 범위가 너무 큽니다."라는 오류가 발생합니다. 이는 동적 수식을 사용하면 Excel에서 배열의 모든 값을 한 번에 계산하려고 시도하기 때문입니다. 결과적으로 값 출력이 완료되기도 전에 스프레드시트 끝에 도달하게 됩니다.

이 문제를 해결하려면 열 대신 셀 범위를 참조하거나 동적 수식을 아예 사용하지 않는 것이 가장 좋은 해결책입니다. 예를 들어 위의 수식을 =B2:B12*10%로 변경하면 정상적으로 작동합니다.

 

수식을 복사하여 붙여넣거나 수식이 포함된 셀의 자동 채우기 핸들을 사용하여 열의 범위 내에서 수식을 채우는 기존 방식을 고수할 수도 있습니다.

마치며

Microsoft는 2020년 1월에 Office 365에 동적 배열을 도입했습니다. 이 기능은 Windows, Mac, Apple, Android 및 Windows Mobile용 Excel 365에서 지원되며, Excel Online에서는 해당되지 않습니다.