Zoals we allemaal weten, wordt Office 365 geleverd met Excel 365 gebundeld. Microsoft heeft verschillende nieuwe features toegevoegd aan Excel 365. Een dergelijke functie is: Dynamische matrixformules. Gewoonlijk retourneert de formule slechts één enkele waarde als resultaat naar een cel. Maar nu, met deze nieuwe functie, kunnen meerdere waarden worden geretourneerd.
Laten we bijvoorbeeld in Excel 2019 en eerdere versies zeggen dat u de formule = D2: D5 op de cel toepast, het resultaat zou beperkt zijn tot de eerste cel.
Toen we de formule op alle corresponderende cellen moesten toepassen, maakten we gebruik van Array-notatie (Ctrl+Shift+Enter). In Excel 365 is dat echter niet zo. Wanneer u dezelfde formule toepast, worden de waarden automatisch gemorst op alle bijbehorende cellen. Raadpleeg de onderstaande afbeelding voor meer details.
Het gebied van cellen waarin het resultaat wordt gemorst, wordt genoemd Morsbereik. Raadpleeg de onderstaande afbeelding:
OPMERKING:
- De morsen is automatisch ingeschakeld met dynamische arrays (momenteel wordt deze functie alleen ondersteund in Excel 365) en de functie kan niet worden uitgeschakeld.
- De Spill-functie is ingeschakeld voor alle formules met of zonder functies.
Morsfouten worden gezien wanneer de formule bedoeld is om meerdere waarden te retourneren, maar de resultaten kunnen niet op de cellen worden geplaatst. De fout ziet er als volgt uit:
Mogelijke redenen om #SPILL Error tegen te komen zijn:
- Het Spill-bereik bevat een waarde waardoor de resultaten niet in de cellen kunnen worden ingevuld
- Het Spill-bereik heeft samengevoegde cellen.
- Wanneer oude werkbladen (gemaakt met Excel 2016 of eerder) met formules die het impliciete snijpunt ondersteunen, worden geopend in Excel365.
- Wanneer u de dynamische matrixformule toepast op een Excel-tabel.
Als u de #SPILL-fout in Excel ziet, hoeft u zich geen zorgen te maken. In dit artikel laten we verschillende manieren zien om de oorzaak van dit probleem te achterhalen en kijken we ook naar manieren om de #SPILL-fout op te lossen
Inhoudsopgave
Identificeer wat de #SPILL-fout veroorzaakt
Als u een morsfout ziet, controleer dan eerst waarom u de fout ziet, om dit te doen,
Stap 1: Klik op de cel die wordt weergegeven #SPIL! fout
Stap 2: Klik op de Uitroepteken zoals hieronder weergegeven:
Stap 3: De eerste regel vertelt ons wat de fout veroorzaakt. In dit geval wordt de fout bijvoorbeeld gezien omdat het Spill-bereik niet leeg is
Oplossingen die moeten worden gevolgd wanneer het morsbereik niet leeg is
Volg de onderstaande oplossingen wanneer u ziet dat de Morsbereik is niet leeg
Fix 1: verwijder de gegevens die het Spill-bereik blokkeren
Als er al gegevens in de cellen in het Morsen-bereik staan, ziet u een #SPILL-fout bij het toepassen van de formule.
Wanneer u duidelijk de gegevens kunt zien die het Spill-bereik blokkeren
Overweeg het onderstaande voorbeeld: wanneer u de formule =D2:D5 op de gegevens toepast, wordt een SPILL-fout gegenereerd omdat er Ik ben hier binnen het lekbereik.
Om de #SPILL-fout te verwijderen, verplaatst u de gegevens of verwijdert u de gegevens uit het overloopbereik.
Wanneer de gegevens die het Spill-bereik blokkeren, zijn verborgen
In sommige gevallen zijn de gegevens die het morsbereik blokkeren verborgen en niet erg duidelijk, zoals te zien is in geval 1. Beschouw het onderstaande voorbeeld,
Volg in dergelijke gevallen de onderstaande stappen om de cel te vinden die het morsbereik blokkeert:
Stap 1: Klik op de cel die wordt weergegeven #SPIL! fout
Stap 2: Klik op de Uitroepteken zoals hieronder weergegeven, kunt u zien dat de fout is omdat de Het morsbereik is niet leeg.
Stap 3: Klik in de vervolgkeuzelijst op Selecteer Obstructieve cellen
Stap 4: De cel die het Spill-bereik blokkeert, wordt gemarkeerd zoals hieronder weergegeven:
Nu u weet welke cel blokkeert, controleert u wat het probleem precies veroorzaakt.
Stap 5: Bij zorgvuldig onderzoek van de cel kunt u enkele gegevens zien die in de cellen zijn verborgen.
Zoals te zien is in de bovenstaande afbeelding, zijn er enkele gegevens. Omdat het lettertype een witte kleur heeft, is het niet gemakkelijk om de blokkade te herkennen. Om van de fout af te komen, verwijdert u de gegevens uit de cel binnen het Spill-bereik.
Repareren 2: Verwijder de aangepaste nummeropmaak;;; toegepast op de cel
Soms, wanneer een aangepaste getalnotatie ;; ; wordt toegepast op een cel, zijn er kansen om de SPILL-fout te zien. In dergelijke gevallen,
Stap 1: Klik op de cel die wordt weergegeven #SPIL! fout
Stap 2: Klik op de Uitroepteken zoals hieronder weergegeven.
Stap 3: Klik in de vervolgkeuzelijst op Selecteer Obstructieve cellen
Stap 4: De cel die het Spill-bereik blokkeert, wordt gemarkeerd zoals hieronder weergegeven:
Stap 5: Klik met de rechtermuisknop op de belemmerende cel.
Stap 6: Kies Cellen opmaken
Stap 7: Het venster Cellen opmaken wordt geopend. Ga naar de Nummer tabblad
Stap 8: Selecteer in het linkerdeelvenster Aangepast
Stap 9: Wijzig in het rechterdeelvenster het Type van;;; tot Algemeen
Stap 10: Klik op de OK knop
Oplossing die moet worden gevolgd wanneer het morsbereik samengevoegde cellen heeft
Als u ziet dat de fout is omdat de Morsbereik heeft samengevoegde cellen zoals hieronder weergegeven,
Stap 1: Klik op Selecteer Obstructieve cellen uit de vervolgkeuzelijst
Stap 2: De belemmerende cel zal zijn: gemarkeerd
Stap 3: Onder de Huis tabblad, klik op Samenvoegen en centreren
Stap 4: Selecteer in de vervolgkeuzelijst Cellen samenvoegen
Fix die moet worden gevolgd wanneer Morsbereik in de tafel
Dynamische matrixformules worden niet ondersteund in Excel-tabellen. Als u de #SPILL-fout ziet in een Excel-tabel zoals hieronder weergegeven met het bericht Morsbereik in tabel,
Stap 1: Selecteer de tafel volledig
Stap 2: Klik op de Tafelontwerp tabblad in de bovenste menubalk
Stap 3: Kies Converteren naar bereik
Stap 4: U ziet een bevestigingsvenster verschijnen, klik op Ja
Oplossing die moet worden gevolgd wanneer het morsbereik onvoldoende geheugen heeft
Wanneer u de oorzaak van de #SPILL-fout probeert te identificeren, als u ziet dat de fout aangeeft Geen geheugen meer, dan is dat omdat de dynamische matrixformule die u gebruikt, verwijst naar een groot bereik, in dergelijke gevallen wordt Excel uitgevoerd geen geheugen meer waardoor een Spill-fout wordt veroorzaakt. Om de fout te verhelpen, kan men proberen te verwijzen naar een kleiner bereik.
Oplossing die moet worden gevolgd wanneer het morsbereik onbekend is
Deze fout treedt op wanneer de grootte van de gemorste array verandert en Excel niet in staat is om de grootte van de gemorste reeks vast te stellen. Over het algemeen wordt deze fout weergegeven wanneer u willekeurige functies zoals RANDARRAY, RAND of RANDBETWEEN gebruikt in combinatie met Dynamic Array-functies zoals SEQUENCE.
Om het beter te begrijpen, beschouwen we het onderstaande voorbeeld, laten we zeggen dat de functie SEQUENCE(RANDBETWEEN(1.100)) wordt gebruikt. Hier genereert RANDBETWEEN een willekeurig geheel getal dat groter is dan of gelijk is aan 1 en kleiner dan of gelijk aan 100. En SEQUENCE genereert opeenvolgende getallen (bijv. SEQUENCE(5) genereert 1,2,3,4,5). RANDBETWEEN is echter een vluchtige functie en blijft de waarde wijzigen telkens wanneer een Excel-blad wordt geopend of gewijzigd. Hierdoor kan de functie SEQUENTIE niet de grootte bepalen van de array die moet worden gegenereerd. Het zou niet weten hoeveel waarden er moeten worden gegenereerd en geeft dus een SPILL-fout.
Wanneer u de oorzaak van de fout identificeert, ziet u: Morsbereik is onbekend
Om dit soort fouten op te lossen, probeer een andere formule te gebruiken die bij u past.
Oplossingen die moeten worden gevolgd wanneer het morsbereik te groot is
Laten we zeggen dat u de oorzaak identificeert en u merkt dat de fout wordt gezien omdat de Het morsbereik is te groot zoals hieronder weergegeven.
Toen Dynamic Array niet aanwezig was, was er iets dat impliciete intersectie wordt genoemd in Excel dat gedwongen om een enkel resultaat te retourneren, zelfs als de formule de mogelijkheid had om meerdere te retourneren resultaten. Overweeg een voorbeeld, als de formule =B: B*5% wordt toegepast op Excel 2019 of eerdere versies, met de impliciete kruising op zijn plaats, zou het resultaat als volgt zijn:
Wanneer dezelfde formule echter wordt gebruikt in Excel 365, ziet u de volgende fout:
Probeer de volgende oplossingen om dit op te lossen:
Oplossing 1: impliciete kruising toepassen met @-operator
wanneer we zeggen =B: B, zal de dynamische array verwijzen naar de hele B-kolom. In plaats daarvan kunnen we Excel dwingen om impliciete intersectie op te leggen met behulp van @ operator
Verander de formule in[e-mail beveiligd]:B*5%
Omdat het impliciete snijpunt wordt toegevoegd, wordt de formule toegepast op een enkele cel. Om de formule uit te breiden,
1. Klik gewoon op de stip zoals hieronder weergegeven:
2. Sleep het naar wens naar de cellen. Hiermee wordt dezelfde formule op deze cellen toegepast.
Fix 2: In plaats van naar de kolom te verwijzen, verwijzen we naar het bereik
In de formule, =B: B*5%, we verwijzen naar kolom B. In plaats daarvan verwijzen naar een bepaald bereik, =B2:B4*5%
Dat is alles
We hopen dat dit artikel informatief is geweest.
Vind het leuk en reageer als je het probleem met de bovenstaande methoden hebt kunnen oplossen.
Bedankt voor het lezen.