Excel-formel: Slik løser du #SPILL! feil -

Innholdsfortegnelse

Sammendrag

En #SPILL-feil oppstår når et spillområde blokkeres av noe på regnearket. Løsningen er vanligvis å rense sølområdet for hindrende data. Se nedenfor for mer informasjon og trinn for å løse.

Forklaring

Om søl og #SPILL! feil

Med introduksjonen av Dynamic Arrays i Excel, "spilder" formler som returnerer flere verdier direkte til regnearket. Rektangelet som omslutter verdiene kalles "spillområde". Når data endres, vil utbredelsesområdet utvides eller trekkes sammen etter behov. Du kan se nye verdier lagt til, eller eksisterende verdier forsvinner.

Video: Søl og utslippsområdet

En #SPILL-feil oppstår når et spillområde blokkeres av noe på regnearket. Noen ganger er dette forventet. For eksempel har du angitt en formel og forventer at den skal søle, men eksisterende data i regnearket er i veien. Løsningen er bare å fjerne sølområdet for hindrende data.

Noen ganger kan imidlertid feilen være uventet og derfor forvirrende. Les nedenfor for hvordan denne feilen kan være forårsaket, og hva du kan gjøre for å løse.

Spillatferd er naturlig

Det er viktig å forstå at spillatferd er automatisk og naturlig. I Dynamic Excel (for tiden bare Office 365 Excel) kan enhver formel, til og med en enkel formel uten funksjoner, søle resultater. Selv om det er måter å stoppe en formel fra å returnere flere resultater, kan ikke søling deaktiveres med en global innstilling.

På samme måte er det ikke noe alternativ i Excel å "deaktivere #SPILL-feil. For å fikse en #SPILL-feil, må du undersøke og løse årsaken til problemet.

Løs nr. 1 - fjern sølområdet

Dette er den enkleste saken å løse. Formelen skal søle flere verdier, men i stedet returnerer den #SPILL! fordi noe er i veien. For å løse feilen, velg hvilken som helst celle i sølområdet, slik at du kan se dens grenser. Flytt deretter blokkeringsdataene til et nytt sted, eller slett dataene helt. Merk at celler i sølområdet må være tomme, så vær oppmerksom på celler som inneholder usynlige tegn, som mellomrom.

På skjermen nedenfor blokkerer "x" sølområdet:

Når "x" er fjernet, spilder UNIQUE-funksjonen normalt:

Fix # 2 - legg til @ karakter

Før Dynamic Arrays brukte Excel en oppførsel kalt "implisitt skjæringspunkt" for å sikre at visse formler med potensial til å returnere flere resultater bare returnerte et enkelt resultat. I ikke-dynamisk array Excel returnerer disse formlene et normalt utseende uten feil. I visse tilfeller kan imidlertid den samme formelen som er angitt i Dynamic Excel, generere en #SPILL-feil. For eksempel, på skjermen nedenfor, inneholder celle D5 denne formelen, kopiert ned:

=$B$5:$B$10+3

Denne formelen ville ikke kaste feil, sier Excel 2016 fordi implisitt skjæringspunkt ville forhindre at formelen returnerte flere resultater. Imidlertid, i Dynamic Excel, returnerer formelen automatisk spillresultater til regnearket, og som krasjer inn i hverandre, siden formelen er kopiert ned fra D5: D10.

En løsning er å bruke tegnet @ for å aktivere implisitt skjæringspunkt som dette:

= @$B$5:$B$10+3

Med denne endringen returnerer hver formel et enkelt resultat igjen, og #SPILL-feilen forsvinner.

Merk: Dette forklarer delvis hvorfor du plutselig kan se "@" -tegnet vises i formler opprettet i eldre versjoner av Excel. Dette gjøres for å opprettholde kompatibilitet. Siden formler i eldre versjoner av Excel ikke kan strømme inn i flere celler, blir @ lagt til for å sikre samme oppførsel når formelen åpnes i Dynamic Excel.

Fix # 3 - naturlig dynamisk matriseformel

En annen (bedre) måte å fikse #SPILL-feilen vist ovenfor er å bruke en naturlig dynamisk matriseformel i D5 slik:

=B5:B10+3

I Dynamic Excel vil denne enkeltformelen spyle resultatene i området D5: D10, som vist på skjermbildet nedenfor:

Merk at det ikke er behov for å bruke en absolutt referanse.

Interessante artikler...