[calc] Formel-Ergebnisse schützen bei späterem Spalten-Einschub

Hallo,

wenn mir später einfällt, dass ich eine weitere Spalte vor vielen anderen bereits vorhandenen Spalten einfügen will, dann beeinflusst das ja alle Spalten und deren Formel-Ergebnisse, die auf diese eingefügte Spalte folgen.

Gibt es eine Möglichkeit um die diese nachfolgenden Spalten zu schützen ohne jede der enthaltenen Formeln anfassen zu müssen und dort bspw. alles absolut einstellen zu müssen?

Das möchte ich aus dem Grund nicht, weil in den diversen Spalten unzählige Formeln enthalten sind, die sowohl absolute als auch relative Bezüge enthalten, und ich diese für die weitere Bearbeitung benötige.

Danke!

Entschuldigt die frühe Unruhestiftung, ich habe nun doch noch selbst eine denkbar einfache aber geniale Lösung gefunden. Da diese Lösung aus einem anderen Forum stammt, mag ich sie hier auch gleich mal einfügen.

  • Mit “Suchen & Ersetzen”:
  • von = auf # die Formeln in einen String wandeln
  • Den ganzen Bereich kopieren
  • woanders einfügen
  • von # auf = den String wieder in eine Formel zurückwandeln

Wenn du eine Spalte einfügst, dann sollten eigentlich die Bezüge in den Formeln automatisch angepasst werden. Tun sie es bei dir nicht?

Es ging nicht darum, dass sich die Formeln in den Zellen anpassen sollen, sondern darum, dass Sie sich eben nicht anpassen sollen, und das auch dann, wenn es relative Zellbezüge sind.

Wozu benötigt man, dass sich die Formeln nicht ändern? Wenn D1 die Formel =C1+$B$1 enthält und C1 den Wert 5 und B1 den Wert 7 hat, dann wird D1 den Wert 12 zeigen. Wenn ich nun vor B eine Spalte einfüge, dann möchte ich doch, dass weiterhin die Rechnung 5+7=12 durchgeführt wird. Welchen Zweck soll es haben, wenn nach dem Einfügen in der dann Zelle E1 die Formel =C1+$B$1 steht?

Das von dir oben angeführte Beispiel ist kein gutes Beispiel für einen solchen Fall.
Die Frage nach dem Sinn ist hier überhaupt nicht wichtig.
In meinem Fall existiert eine umfangreiche Kalenderdarstellung mit diversen Zellbezügen und Abhängigkeiten mittels vieler Tabellenblätter und Transponierung. Da hat diese Frage durchaus Sinn.

Sofern ich einfach nur vor den existierenden Spalten eine Neue einschiebe, ändern sich in gewohnter Weise die ganzen Bezüge. Diese sollen aber bestehen bleiben.

Da ist mir heute bei schönem Wetter auf dem Sudelfeld eine Idee gekommen. Falls ein unverwechselbarer Platzhalter nicht so leicht zu finden ist (oder weil’s so schön geht):

Zu fixierenden Bereich wählen.

Mit ‘F&R’, ‘RegEx’, ‘Current selection only’, ‘Search in Formulae’ || ^(=.*) oben und $1 unten || 'Find All’

‘Format Cells’ ‘Number Format’ @

’Replace All’

Arbeiten an der "Struktur (Spalten/Reihen Einfügen/Entfernen)

‘F&R’ ist noch offen! Unveränderte Einstellungen! 'Find All’

‘Format Cells’ ‘Number Format’ 'All’

’Replace All’

Das mag etwas komplizierter aussehen, geht aber ganz schnell. Und man arbeitet nur an den Zellen, deren Inhalt mit = beginnt (die anderen sind ja nicht “gefunden”, ein anderes Zeichen kommt nicht ins Spiel).

Da Calc Leerstellen in Formeln zulässt und bewahrt, kann man übrigens auch anzupassende (z.B. =und dann sofort ein Ausdrucksteil) und zu fixierende Formeln (z.B.= mit Leerstelle dahinter) unterscheiden und mit dem leicht veränderten Suchausdruck ^(= .*) fixiert man nur diesen Teil der Formeln. Darauf müsste man natürlich schon beim Tabellenentwurf achten.