#SPILL-fel returneras när en formel ger flera resultat och Excel inte kan returnera resultaten till rutnätet. Mer information om den här typen av fel kan du läsa följande hjälpavsnitt:
Det här felet uppstår när spillområdet för en spilld matrisformel inte är tomt.
Välj formeln för att visa en streckad kantlinje som anger det avsedda spillområdet. Genom att välja formeln visas ett felmeddelande.
Markera felkontrollvarningen och välj alternativet Markera hindrande celler för att omedelbart gå till de celler som hindrar cellerna. Du kan då rensa felet genom att antingen ta bort eller flytta den försvårande cellens inmatning. Matrisformeln spiller som avsett så fort försvårandet har rensats.
Excel kunde inte bestämma storleken på den spillda matrisen eftersom den är volatil och ändrar storlek mellan beräkningsstegen. Till exempel utlöser följande formel detta #SPILL! :
=SEKVENS(SLUMP.MELLAN(1,1000))
Ändringar av den dynamiska matrisens storlek kan utlösa ytterligare beräkningssteg för att säkerställa att kalkylbladet är helt beräknat. Excel kommer lösa den dynamiska matrisen som #SPILL! om storleken på matrisen fortsätter att ändras under dessa ytterligare steg och inte stabiliseras.
Det här felvärdet är i allmänhet kopplat till användningen av funktionerna SLUMP, SLUMPMATRIS och SLUMP.MELLAN. Andra volatila funktioner som till exempel FÖRSKJUTNING, INDIREKT och IDAG returnerar inte olika värden vid varje beräkningssteg.
Till exempel så letade formeln =LETARAD(A:A,A:C,2,FALSKT) tidigare bara upp ID:et i cell A2 om den placerades i cell E2 som i exemplet nedan. Men i dynamisk matris i Excel orsakar formeln ett #SPILL! eftersom Excel slår upp hela kolumnen, returnerar 1 048 576 resultat och når slutet av Excel-rutnätet.
Det finns tre enkla sätt att lösa problemet:
# |
Metod |
Formel |
---|---|---|
1 |
Referera endast till de letaupp-värden du är intresserad av. Det här formelformatet returnerar en dynamisk matris, men fungerar inte med Excel-tabeller.
|
=LETARAD(A2:A7,A:C,2,FALSKT) |
2 |
Referera endast till värdet på samma rad och kopiera sedan formeln nedåt. Det här traditionella formelformatet fungerar i tabeller men returnerar inte en dynamisk matris.
|
=LETARAD(A2,A:C,2,FALSKT) |
3 |
Begär att Excel utför implicit skärningspunkt med @-operatören och kopiera sedan formeln nedåt. Det här formelformatet fungerar i tabeller men returnerar inte en dynamisk matris.
|
=LETARAD(@A:A,A:C,2,FALSKT) |
Formler för spillda matriser stöds inte i Exceltabeller. Prova att flytta formeln från tabellen eller konvertera tabellen till ett område (välj Tabelldesign > Verktyg > Konvertera till område).
Den spillda matrisformeln du försöker ange har orsakat att Excel har fått slut på minne. Referera till en mindre matris eller område.
Spillda matrisformler kan inte spilla över i sammanfogade celler. Separera cellerna eller flytta formeln till ett annat område som inte överlappar med sammanfogade celler.
Välj formeln för att visa en streckad kantlinje som anger det avsedda spillområdet. Genom att välja formeln visas ett felmeddelande.
Du kan markera felkontrollvarningen och välja alternativet Markera hindrande celler för att omedelbart gå till de celler som hindrar cellerna. Matrisformeln spiller som avsett så fort de sammanfogade cellerna har rensats.
Excel känner inte igen eller kan inte stämma av orsaken till det här felet. Kontrollera att din formel innehåller alla argument som krävs för ditt scenario.
Behöver du mer hjälp?
Se även
Du kan alltid fråga en expert i Excel Tech Community eller få support i Communities.