Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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

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

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige