Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeilen einfügen, falsche relative Bezüge

Zeilen einfügen, falsche relative Bezüge
08.05.2008 16:22:00
Bernd
Hallo,
ich habe kaum Excel-Wissen und brüte gerade über ein für mich merkwürdiges Problem. Ich bitte um Nachsicht, wenn dieses Problem bereits behandelt wurde, ich habe es im Archiv und in der FAQ nicht ohne weiteres gefunden.
Gegeben sei ein leeres Spreadsheet. Dann die Formel "=C1+A2-B2" in die Zelle C2 einfügen, C2 kopieren und diese Formel dann in die Zellen C3 abwärts einige male kopieren. In C3 steht nun "=C2+A3-B3".
Nun selektiert man Zeile 3 und fügt diese vor Zeile 3 wieder ein. Ergebnis: C3 ist nun "=C1+A3-B3" und C4 ist "=C2+A4-B4". Die anderen verschobenen Zeilen enthalten korrekte Bezüge.
Die fehlerhafte Zelle C4 erhält man auch durch Einfügen einer Leerzeile vor Zeile 3. Fügt man die kopierte Zeile vor eine andere Zeile ein, so ist immer die erste nach unten verschobene Zeile falsch, dann aber die eingefügte Zeile korrekt.
Gibt es dafür eine Erklärung und einen Workaround? Bisher behelfe ich mir, daß ich die Formel wieder in die C-Zellen kopiere. Es sieht für mich so aus, daß Excel zum einen zunächst die Zeilen verschiebt und Platz macht und dabei die Bezüge anpasst, hier tritt dann das Problem mit der Formel in C4 auf. Danach scheint Excel den bereits geänderten Inhalt der Zeile 4 in 3 zu kopieren und dabei erneut die Bezüge anzufassen.
Bernd

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Dieses Verhalten ist absolut korrekt !
08.05.2008 17:28:00
NoNet
Hallo Bernd,
auch wenn das zunächst verwundert : Dieses Verhalten ist absolut korrekt und auch berechtigt !
Wenn du VOR Zeile 3 eine weitere Zeile einfügst (ob manuell eine Leerzeile oder durch Kopieren eine bereits gefüllte Zeile), so verschieben sich alle Zellen ab der ursprünglichen Zeile 3 um 1 Zeile nach unten (C3 verschiebt sich also auf C4, B5 auf B6 etc.) - die Zeilen OBERHALB der Zeile 3 bleiben bestehen.
Eine Formel in Zeile 3 die sich also zuvor auf C1, A2 und B2 bezog (=C1+A2-B2) bezieht sich auch danach wieder auf diese Zeilen.
Eine Formel in Zeile 3, die sich zuvor auf C2, A3 und B3 bezog (=C2+A3-B3) bezieht sich auch NACH dem Einfügen wieder auf diese Zellen, die nun C2, A4, B4 heissen.
Die eingefügte Zeile orientiert sich an dieser Formel der ursprünglichen Zeile 3 und passt die Bezüge an, sofern sie nicht als absolute Zelladressen (also mit $-Zeichen) eingegeben wurden :
Analog zur Formel der ursprünglichen Zeile 3 (jetzt Zeile 4) : =C2+A4-B4 lautet die angepasste Formel der neuen (eingefügten) Zeile 3 also : =C1+A3-B3.
Auch wenn dies nicht der relativen Formel aus Zeile 2 entspricht, so ist es im Sinne des Kopierens korrekt, da ja eine neue Zeile hinzugekommen ist !
Analog verhält sich das beim Löschen einer Zeile : Da hier eine Zeile "fehlt" erhalten Formeln, die sich auf die gelöschte Zeile beziehen den Fehler #BEZUG!, da die Zelle, auf die sich die Formel bezog nun fehlt (die gesamte Zeile wurde ja gelöscht, damit auch die Bezugszelle).
Dieses "Problem" tritt beim Einfügen/Löschen von Zeilen immer auf, da Excel veruscht, die ursprünglichen Bezüge beizubehalten (nicht die Zelladressen in der Formal selbst, sondern die TATSÄCHLICHE Zelle !).
Am deutlichsten und verständlichsten wird das, wenn die Bezugszellen einer Formel auch tatsächlich mit sinnvollen Werten gefüllt sind, dann erkennt man, dass dieses Verhalten absolut korrekt ist !!
Gruß, NoNet
PS: Möchte man immer auf eine "feste" Zeladresse zugreifen, kann man sich der Funktion INDIREKT() bedienen, die den NACHTEIL/VORTEIL hat, dass sich die als festen Text eingegebene Zelladresse beim Löschen/Einfügen von Zeilen NICHT verändert.

Anzeige
AW: Dieses Verhalten ist absolut korrekt !
08.05.2008 21:20:19
Bernd
Hallo NoNet,
Danke für die Erklärungen. Also gibt es offenbar keine Möglichkeit, relative Bezüge zu definieren, die fest ggü. der aktuellen Position sind, die Z1S1-Adressierung scheint zunächst so zu arbeiten, wird aber auch von Excel identisch umgerechnet, aus Z(-1) wird dann Z(-2).
Bernd

Anzeige
AW: Dieses Verhalten ist absolut korrekt !
09.05.2008 01:24:28
Daniel
Hi
der Workaround wäre in deinem Fall das Verwenden der BEREICH.VERSCHIEBEN-funktion.
für dein Beispiel wäre die Anfangsformel in C2 (=C1+A2-B2):

= bereich.verschieben(C2;-1;0) + bereich.verschieben(C2;0;-2) - bereich.verschieben(C2;0;-1) 


diese Formel sollte sich beim Einfügen und löschen von Zeilen nach deinen Wünschen verhalten.
Gruß, Daniel

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeilen einfügen in Excel ohne Bezug zu verlieren


Schritt-für-Schritt-Anleitung

  1. Öffne ein leeres Excel-Dokument.
  2. Gib in die Zelle C2 die Formel =C1+A2-B2 ein.
  3. Kopiere die Zelle C2 und füge sie in die Zellen C3, C4 usw. ein.
  4. Selektiere die Zeile 3 (die Zeile mit der Formel).
  5. Klicke mit der rechten Maustaste und wähle "Zeile einfügen" aus.
  6. Beobachte die Veränderungen in den Zellen:
    • C3 zeigt nun =C1+A3-B3.
    • C4 zeigt =C2+A4-B4.

Du wirst feststellen, dass beim Einfügen von Zeilen die Bezüge in C3 und C4 nicht wie erwartet sind. Dies liegt daran, dass Excel die Bezüge anpasst, was zu einem relativen Fehler in Excel führen kann.


Häufige Fehler und Lösungen

  • Problem: Nach dem Einfügen einer Zeile ist der Bezug in der Formel falsch.

    • Lösung: Dies ist ein gewolltes Verhalten von Excel. Du kannst die Formel nach dem Einfügen manuell korrigieren oder eine alternative Methode verwenden.
  • Problem: #BEZUG!-Fehler nach dem Löschen einer Zeile.

    • Lösung: Wenn eine Zeile gelöscht wird, bezieht sich die Formel auf eine nicht mehr existierende Zelle. Überprüfe deine Formeln und passe sie entsprechend an.

Alternative Methoden

Eine effektive Möglichkeit, um Bezüge in Excel beim Einfügen von Zeilen beizubehalten, ist die Verwendung der Funktion BEREICH.VERSCHIEBEN. Hier ist ein Beispiel:

= BEREICH.VERSCHIEBEN(C2;-1;0) + BEREICH.VERSCHIEBEN(C2;0;-2) - BEREICH.VERSCHIEBEN(C2;0;-1)

Mit dieser Formel wird der Bezug auch beim Einfügen von Zeilen korrekt beibehalten.


Praktische Beispiele

  1. Einfügen von Zwischenzeilen: Wenn du zwischen zwei Zeilen eine neue Zeile einfügst und die Formel in C2 bleibt unverändert, wird die Formel in der neuen Zeile automatisch angepasst.

  2. Formeln kopieren: Wenn du eine Zeile mit einer Formel kopierst und diese unterhalb einfügst, wird Excel die Bezüge relativ anpassen, was oft zu unerwünschten Ergebnissen führt.


Tipps für Profis

  • Verwende absolute Bezüge (z.B. $C$1), wenn du sicherstellen möchtest, dass die Zelle nicht verändert wird, egal wo du die Zeile einfügst.
  • Experimentiere mit der INDIREKT-Funktion. Diese ermöglicht es dir, eine feste Zelladresse zu nutzen, die sich auch beim Einfügen oder Löschen von Zeilen nicht ändert.
  • Bei vielen Berechnungen kann es hilfreich sein, Formeln in Hilfsspalten zu verwenden, um die Übersichtlichkeit zu wahren.

FAQ: Häufige Fragen

1. Warum verändert sich die Formel nach dem Einfügen einer Zeile?
Excel passt die Formeln automatisch an, um die relativen Bezüge beizubehalten. Dies kann manchmal zu unerwünschten Ergebnissen führen.

2. Gibt es eine Möglichkeit, die Bezüge beim Einfügen von Zeilen zu fixieren?
Ja, du kannst absolute Bezüge oder die Funktion BEREICH.VERSCHIEBEN verwenden, um sicherzustellen, dass deine Formeln beim Einfügen von Zeilen korrekt bleiben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige