Menu

#ÜBERLAUF! in Excel: Ursachen und Lösungen (#SPILL!)

#ÜBERLAUF! bedeutet, dass eine Formel, die mehrere Werte liefert, keinen Platz dafür hat: Eine Zelle in ihrem Überlaufbereich ist nicht leer. Leere die Zellen, die im Weg sind, und das Ergebnis erscheint.

Jede Tabelle auf dieser Seite ist live: Ändere eine Zahl oder eine Formel, und sie rechnet neu.

#ÜBERLAUF! (englisch #SPILL!) bedeutet, dass eine Formel mehrere Werte liefert (eine Liste oder eine Tabelle) und Excel keinen Platz hat, sie zu schreiben: Mindestens eine Zelle in dem Bereich, den das Ergebnis braucht, ist nicht leer. =EINDEUTIG(A2:A6) unten braucht drei Zellen, C2 bis C4, und in C4 steht ein x. Lösch C4, und die Liste erscheint. Die Tabelle zeigt die englischen Funktions- und Fehlernamen, hier =UNIQUE(A2:A6) und #SPILL!. Du kannst die Formeln in der Tabelle auch deutsch eingeben, mit Semikolons: =EINDEUTIG(A2:A6).

EINDEUTIG, blockiert durch einen Wert
C2
ABC
1ProductUnique list
2Apple#SPILL!
3Pear
4Applex
5Plum
6Pear
#SPILL! Das Ergebnis braucht mehr freie Zellen. Leere die Zellen, die im Weg stehen.Im deutschen Excel: =EINDEUTIG(A2:A6)

Klick auf C2: Der Hinweis unter dem Raster sagt, was nicht stimmt. Klick dann auf C4 und drück Entf. Die drei Produkte laufen in C2:C4 über, und ein Rahmen markiert den Überlaufbereich. Tippe etwas in C3, und der Fehler ist wieder da. Excel funktioniert genauso: Funktionen, die Arrays liefern, etwa FILTER, EINDEUTIG, SORTIEREN, SEQUENZ und TEXTTEILEN, funktionieren nur, wenn ihr ganzer Überlaufbereich frei ist. Sie brauchen Excel 2021 oder neuer (TEXTTEILEN: Microsoft 365 oder Excel 2024); ältere Versionen zeigen für sie #NAME?, also erscheint #ÜBERLAUF! dort nie (siehe EINDEUTIG zur Funktion selbst).

So behebst du den Fehler #ÜBERLAUF!

  1. Klick auf die Zelle mit #ÜBERLAUF!. In Excel zeigt ein gestrichelter Rahmen den Bereich, den das Ergebnis füllen will.
  2. Klick auf das Warnsymbol neben der Zelle und wähle Störende Zellen auswählen. Excel markiert jede Zelle, die im Weg ist.
  3. Drück Entf, oder verschieb diese Zellen an eine andere Stelle (ausschneiden und einfügen).

Enthalten die störenden Zellen Daten, die du brauchst, verschiebst du stattdessen die Formel: Setz sie in eine Spalte oder Zeile, in der darunter und daneben alles leer ist.

#ÜBERLAUF!, obwohl die Zellen leer aussehen

Der verwirrendste Fall: Der Überlaufbereich sieht leer aus, aber Excel meldet trotzdem #ÜBERLAUF!. Eine Zelle mit einem einzigen Leerzeichen oder eine Formel, die eine leere Zeichenfolge "" liefert, ist nicht leer, und sie blockiert den Überlauf genau wie ein Wert.

Zellen, die leer aussehen, aber blockieren
A2
ABC
1NumbersNumbers
2#SPILL!#SPILL!
3
4
#SPILL! Das Ergebnis braucht mehr freie Zellen. Leere die Zellen, die im Weg stehen.Im deutschen Excel: =SEQUENZ(3)

A2 will A2:A4, und in A4 steht ein Leerzeichen. C2 will C2:C3, und in C3 steht ="". Klick auf A4 oder C3, um zu sehen, was dort steht, lösch es, und die Zahlen laufen über. In Excel findet Störende Zellen auswählen diese Zellen, auch wenn in ihnen nichts zu sehen ist. Weißer Text auf weißer Füllung versteckt sich genauso.

#ÜBERLAUF!, wenn eine Formel in eine andere überläuft

Zwei überlaufende Formeln können sich gegenseitig blockieren, oder eine Formel, die jemand weiter unten eingetippt hat, liegt im Überlaufbereich der Formel darüber.

Zwei Formeln, die sich im Weg stehen
D2
ABCDE
1NameDeptITSales
2AnaIT#SPILL!Ben
3BenSalesDee
4CyIT5
5DeeSales
6EveIT
#SPILL! Das Ergebnis braucht mehr freie Zellen. Leere die Zellen, die im Weg stehen.Im deutschen Excel: =FILTER(A2:A6;B2:B6="IT")

Die IT-Liste braucht drei Zellen, D2:D4, und in D4 steht eine Formel mit ANZAHL2. Die Sales-Liste in E2 hat die zwei Zellen, die sie braucht, also funktioniert sie. Verschieb die Formel mit ANZAHL2 nach D6 (oder in eine beliebige Zelle unter der Liste), und die IT-Namen laufen über. Lass einer Liste Platz zum Wachsen: Kommt später ein vierter Mitarbeiter in IT dazu, braucht das Ergebnis eine Zelle mehr.

#ÜBERLAUF! mit SVERWEIS und ganzen Spalten

Eine häufige Ursache in Formeln, die für älteres Excel geschrieben wurden, ist ein Suchwert, der eine ganze Spalte ist:

=VLOOKUP(A:A,Prices!A:B,2,FALSE)      #SPILL!  (one result for every row of the sheet)
=VLOOKUP(A2,Prices!A:B,2,FALSE)       one result, fill it down
=VLOOKUP(A2:A100,Prices!A:B,2,FALSE)  100 results that spill
=VLOOKUP(@A:A,Prices!A:B,2,FALSE)     one result, the value on the formula's own row

In deutschem Excel lauten die ersten beiden =SVERWEIS(A:A;Prices!A:B;2;FALSCH) und =SVERWEIS(A2;Prices!A:B;2;FALSCH). A:A hat 1.048.576 Zellen, also verlangt die erste Formel 1.048.576 Ergebnisse, und ab Zeile 2 sind nicht mehr genug Zeilen übrig: Das Warnmenü meldet, dass der Überlaufbereich über den Rand des Arbeitsblatts hinausgeht. Das Muster stammt aus älterem Excel, das stillschweigend nur den Wert in der Zeile der Formel verwendet hat. Excel 365 behält dieses Verhalten in alten Arbeitsmappen bei, indem es die Formel als =SVERWEIS(@A:A;...) zeigt, aber dieselbe Formel, neu eingetippt, lässt die ganze Spalte überlaufen. Dasselbe passiert mit =A:A*2 und jeder anderen Formel, die mit einer ganzen Spalte rechnet. Nimm eine Zelle und füll nach unten aus, einen Bereich in der echten Größe, oder @. Mehr zum Verweis selbst steht auf der Seite zu SVERWEIS.

Ein Ergebnis pro Zeile statt eines Überlaufs

Eine Formel, die mit einem Bereich rechnet, läuft ebenfalls über. Oft ist das gewollt, und manchmal willst du stattdessen eine Formel pro Zeile.

Eine übergelaufene Formel oder eine Formel pro Zeile
C2
ABCD
1MonthSalesSpilled +10%Filled +10%
2Jan100110110
3Feb120132132
4Mar909999
5Apr140154154
Klicke auf eine Zelle, um ihre Formel zu sehen. Ändere eine Zahl oder eine Formel, und die Tabelle rechnet neu.Im deutschen Excel: =B2:B5*1,1

Beide Spalten zeigen 110, 132, 99 und 154. C2 enthält eine Formel, und C3:C5 sind ihr Überlauf: Klick auf C3, und der Hinweis unter dem Raster sagt, dass die Zelle aus C2 übergelaufen ist. Tippe etwas in C4, und C2 wird zu #SPILL!. D2:D5 sind vier einzelne Formeln, also lässt sich jede Zelle für sich ändern, und nichts kann sie blockieren. Nimm die zweite Form, wenn Leute einzelne Ergebnisse überschreiben werden.

#ÜBERLAUF! in einer Tabelle, mit verbundenen Zellen oder bei unbekannter Größe

Diese Ursachen hängen von der Arbeitsmappe ab, nicht von der Formel:

  • In einer Excel-Tabelle (Einfügen > Tabelle): Tabellen unterstützen keine übergelaufenen Ergebnisse, also zeigt ein FILTER oder EINDEUTIG in einer Tabellenspalte #ÜBERLAUF!. Setz die Formel außerhalb der Tabelle, oder markiere die Tabelle und wähle Tabellenentwurf > In Bereich konvertieren.
  • Verbundene Zellen im Überlaufbereich: Markiere sie und wähle Start > Verbinden und zentrieren > Zellverbund aufheben, oder verschieb die Formel.
  • Überlaufbereich unbekannt: Die Größe des Ergebnisses ändert sich bei jeder Neuberechnung, wie in =SEQUENZ(ZUFALLSBEREICH(1;10)). Excel weigert sich, ein Ergebnis überlaufen zu lassen, dessen Größe flüchtig ist. Gib ihm eine feste Größe.
  • Überlaufbereich zu groß oder über den Rand des Arbeitsblatts hinaus: Das Ergebnis würde über die letzte Zeile oder Spalte hinausgehen. Nicht genügend Arbeitsspeicher: Das Array ist zu groß, um es zu berechnen. In allen drei Fällen verkleinerst du die Bereiche, meist von ganzen Spalten auf die echten Daten.

Einen einzigen Wert liefern, damit nichts blockieren kann

Brauchst du aus einer Liste nur eine Zahl, etwa wie viele verschiedene Produkte es gibt, packst du die überlaufende Funktion in eine, die einen einzigen Wert liefert. Ein einzelner Wert läuft nie über, also kann ihm keine Zelle im Weg stehen.

Wie viele verschiedene Produkte
E2
ABCDE
1ProductDifferent products
2Apple
3Pear
4Applex
5Plum
6Pear
7Apple
Klicke auf eine Zelle, um ihre Formel zu sehen. Ändere eine Zahl oder eine Formel, und die Tabelle rechnet neu.

Du bist dran: E2 soll angeben, wie viele verschiedene Produkte in A2:A7 stehen. Ein einfaches =UNIQUE(A2:A7) würde in das x in E4 überlaufen. Schreib in E2 eine Formel, die die Anzahl liefert.

ANZAHL2 (englisch COUNTA) zählt die Werte, die EINDEUTIG liefert, und gibt eine einzige Zahl zurück, in deutschem Excel =ANZAHL2(EINDEUTIG(A2:A7)). Derselbe Gedanke funktioniert mit =INDEX(SORTIEREN(A2:A7);1) für den ersten Wert einer sortierten Liste, =INDEX(FILTER(...);1) für den ersten Treffer oder =SUMME(FILTER(...)) für eine Summe.

Häufig gestellte Fragen

Was bedeutet #ÜBERLAUF! in Excel?

Eine Formel hat mehr als einen Wert geliefert (ein dynamisches Array), und Excel konnte sie nicht in die Zellen darunter oder daneben schreiben, weil mindestens eine dieser Zellen nicht leer, verbunden oder Teil einer Tabelle ist. Leere oder verschieb, was im Weg ist, und die Ergebnisse erscheinen.

Warum bekomme ich #ÜBERLAUF!, obwohl die Zellen leer aussehen?

Eine Zelle, die leer aussieht, kann trotzdem ein Leerzeichen, eine Formel, die "" liefert, oder weiß formatierten Text enthalten. Jedes davon blockiert den Überlauf. Klick auf das Warnsymbol neben dem Fehler, wähle Störende Zellen auswählen und drück Entf.

Wie behebe ich #ÜBERLAUF! bei SVERWEIS?

Der Suchwert ist eine ganze Spalte oder ein Bereich, etwa =SVERWEIS(A:A;D:E;2;FALSCH), also versucht Excel, ein Ergebnis pro Zeile des Blatts zu liefern. Nimm eine Zelle und füll nach unten aus, =SVERWEIS(A2;D:E;2;FALSCH), oder einen Bereich in der tatsächlichen Größe, =SVERWEIS(A2:A100;D:E;2;FALSCH).

Wie verhindere ich, dass eine Formel in Excel überläuft?

Lass sie einen einzigen Wert liefern. Setz @ vor einen Bereich, um nur den Wert in der Zeile der Formel zu nehmen (=@A2:A10*2), oder pack das Ergebnis in eine Funktion, die einen Wert liefert, etwa =ANZAHL2(EINDEUTIG(A2:A10)) oder =INDEX(SORTIEREN(A2:A10);1).

Kann eine überlaufende Formel in einer Excel-Tabelle stehen?

Nein. Eine Formel, die überläuft, zeigt in einer Tabelle #ÜBERLAUF!. Setz sie in eine Zelle außerhalb der Tabelle, oder wandle die Tabelle mit Tabellenentwurf > In Bereich konvertieren in einen normalen Bereich um.

Illustration der Programmiersprachen bei Coddy

Lerne mit Coddy zu programmieren

LOS GEHT'S