본문 바로가기
엑셀 실무

엑셀 #SPILL! 오류 뜰 때 — 원인 5가지와 바로 해결하는 법

by RichFebru 2026. 11. 4.
반응형

한 줄 답: 엑셀 #SPILL! 오류는 수식 결과가 여러 칸으로 펼쳐져야 하는데 그 자리에 이미 값이 있거나, 병합된 셀이 있거나, 표(Ctrl+T) 안이라서 펼쳐지지 못할 때 생깁니다. 오류 셀을 클릭하고 점선으로 표시된 범위 안의 칸을 비우면 대부분 바로 해결됩니다.

대상: Microsoft 365, Excel 2021 이후 (동적 배열 수식이 있는 버전)

기준일 2026년 11월 · 작성 RF (의류 OEM 생산관리 실무 · 경영지도사) · Microsoft 365 기준

#SPILL!은 왜 생기나?

최신 엑셀은 수식 하나가 결과를 여러 칸에 자동으로 펼쳐 넣습니다. 이걸 "분산(Spill)"이라고 합니다. =UNIQUE(A2:A100)을 B2에 넣으면 고유값 목록이 B2부터 아래로 쭉 채워지는 식입니다.

펼쳐질 자리가 막혀 있으면 엑셀은 아무것도 쓰지 않고 #SPILL!을 띄웁니다. 기존 데이터를 덮어쓰지 않으려는 안전장치입니다.

원인 5가지와 해결법은?

원인 확인 방법 해결
① 펼쳐질 칸에 값이 있음 오류 셀 클릭 → 점선 범위 안에 글자·공백·0이 있는지 그 칸 지우기
② 범위 안에 병합된 셀 점선 범위 안에 병합 셀이 있는지 병합 해제
③ 표(Ctrl+T) 안에서 사용 셀이 표 서식 안에 있는지 표 밖으로 수식 옮기기 또는 표를 범위로 변환
④ 결과가 시트 끝을 넘음 열 전체(A:A)를 참조했는지 범위를 실제 데이터 행까지로 줄이기
⑤ 결과 크기가 계속 바뀜 RANDBETWEEN 등으로 크기가 정해지지 않는지 크기를 고정하는 수식으로 변경

① 가장 흔한 원인 — 눈에 안 보이는 값

칸이 비어 보여도 공백 한 칸이나 흰색 글자가 들어 있으면 막힙니다. 오류 셀 옆의 노란 느낌표 → 방해하는 셀 선택을 누르면 문제의 칸으로 바로 이동합니다. Delete로 지우면 결과가 즉시 펼쳐집니다.

③ 표 안에서는 동적 배열이 안 된다

Ctrl+T로 만든 엑셀 표 안에서는 펼쳐지는 수식을 쓸 수 없습니다. 표 바깥 빈 칸에 수식을 넣거나, 표 디자인 → 범위로 변환을 하면 됩니다.

④ 열 전체를 참조한 VLOOKUP

예전 엑셀에서 쓰던 습관 때문에 많이 생깁니다.

=VLOOKUP(A:A, 단가표!A:C, 3, FALSE)

첫 인수에 열 전체(A:A)를 넣으면 최신 엑셀은 100만 행 전체의 결과를 펼치려다 시트 끝을 넘어 #SPILL!을 냅니다. 한 칸만 참조하고 아래로 채우세요.

=VLOOKUP(A2, 단가표!$A:$C, 3, FALSE)

또는 펼쳐지는 대신 한 칸만 계산하라고 @를 붙일 수도 있습니다.

=VLOOKUP(@A:A, 단가표!A:C, 3, FALSE)

#SPILL!이 자주 나오는 함수는?

함수 쓰임
UNIQUE 중복 없는 목록
FILTER 조건에 맞는 행만 뽑기
SORT, SORTBY 정렬된 결과
SEQUENCE 연속 번호
XLOOKUP (여러 열 반환 시) 한 번에 여러 값 가져오기
TEXTSPLIT 텍스트 나누기

이 함수들은 결과 칸 수를 미리 알 수 없어서 아래·오른쪽을 넉넉하게 비워 두는 습관이 필요합니다.

펼쳐진 결과를 참조하려면?

펼쳐진 결과 전체를 다른 수식에서 쓰고 싶으면 첫 칸 주소 뒤에 #을 붙입니다.

=COUNTA(B2#)

B2#은 "B2에서 펼쳐진 범위 전체"라는 뜻입니다. 결과가 늘거나 줄어도 자동으로 따라갑니다.

구버전으로 파일을 보내면?

Excel 2016 이하에서 열면 동적 배열 수식이 배열 수식(중괄호)이나 #NAME?으로 보일 수 있습니다. 받는 사람이 구버전을 쓴다면 결과를 값으로 붙여넣기해서 보내는 게 안전합니다. #NAME? 원인은 블로그의 #NAME? 오류 글에 정리해 두었습니다.

엑셀 #SPILL! 오류 원인과 해결 가이드
엑셀 #SPILL! 오류 원인과 해결 가이드

자주 묻는 질문

Q. #SPILL! 오류를 가장 빨리 해결하는 방법은?

오류 셀을 클릭해 점선으로 표시된 범위를 확인하고, 그 안에 있는 값·공백·병합 셀을 지우거나 해제하면 됩니다. 노란 느낌표의 "방해하는 셀 선택"을 누르면 문제 칸으로 바로 이동합니다.

Q. 엑셀 표 안에서 UNIQUE나 FILTER를 쓰면 왜 #SPILL!이 뜨나요?

엑셀 표(Ctrl+T) 안에서는 여러 칸으로 펼쳐지는 동적 배열 수식을 지원하지 않기 때문입니다. 표 바깥에 수식을 넣거나 표를 범위로 변환하세요.

Q. 예전에 잘 되던 VLOOKUP이 갑자기 #SPILL!을 내요.

찾을 값 자리에 A:A처럼 열 전체를 넣었기 때문일 가능성이 큽니다. A2처럼 한 칸만 참조하거나 @A:A로 바꾸면 해결됩니다.

관련 글

참고

 

Excel 도움말 및 학습 | Microsoft Support

피벗 테이블 또는 피벗 차트에서 데이터 정렬하기 피벗 테이블을 만들어 워크시트 데이터 분석하기 피벗 테이블의 레이아웃 및 서식 디자인하기

support.microsoft.com

 

반응형