Services
Study guides
Free tools
#SPILL! means a dynamic-array formula wants to return several values but something is blocking the spill range. Clear the cells below or to the right, or move the formula to an empty area.
The short answer
#SPILL! means a dynamic-array formula wants to return several values but something is blocking the spill range. Clear the cells below or to the right, or move the formula to an empty area.
Select the cells Excel highlights and delete their contents. Do not delete the formula itself. Check for merged cells as well.
Dynamic arrays cannot spill inside an Excel Table. Put the formula below or beside the table, or convert the table to a normal range if appropriate.
Instead of referencing whole columns, reference the actual data range. This makes the spill size predictable and faster.
=FILTER($A$2:$C$500,$C$2:$C$500="North","No rows")A formula such as =FILTER(A2:A100,A2:A100>0) placed in A2 will try to overwrite its own source. Move the result to a different column.
=FILTER($A$2:$C$500,$C$2:$C$500="North","No rows")Returns matching rows into an empty area; clear any cells the result would occupy.
Paste the formula into the free browser tools to see the exact fix without uploading your file. The Error Fixer explains the code, the Formula Checker finds syntax problems, and the Formula Explainer breaks down nested logic.
#SPILL! means a dynamic-array formula wants to return several values but something is blocking the spill range. Clear the cells below or to the right, or move the formula to an empty area.
Clear the spill range: Select the cells Excel highlights and delete their contents. Do not delete the formula itself. Check for merged cells as well. Move the formula out of the table: Dynamic arrays cannot spill inside an Excel Table. Put the formula below or beside the table, or convert the table to a normal range if appropriate.
Usually because only some rows contain the trigger: A cell inside the spill range contains data, a formula or a merged cell. The formula is inside an Excel Table, which does not allow dynamic-array spill. The formula is trying to spill into a protected or hidden area.
Returns matching rows into an empty area; clear any cells the result would occupy. Use this pattern as a guard: =FILTER($A$2:$C$500,$C$2:$C$500="North","No rows")
Still stuck?
A human Excel expert can repair the formula, explain the cause and return a tested workbook — usually within 24 hours. Fixed quote before work starts, from $15/hr.