Kann man in Microsoft Excel 2010 den Wert einer Zelle durch sich selbst (den Wert) definieren?

... komplette Frage anzeigen

5 Antworten

Eine Funktion wie AKTUELL (in OpenOffice/LibreOffice) gibt es in Excel nicht. (Und auch in OpenOffice/LibreOffice ist sie nicht dazu gedacht, in Berechnungen einbezogen zu werden)

Damit bleibt nur ein Makro, um den Inhalt dieser Zelle immer aktuell anzupassen.

Aber das Ergebnis ist dann davon abhängig, ob man eine Zahl versehentlich doppelt eingibt und ähnlichem.

Besser wäre es allemal, den von Excel vorgesehenen Weg zu nehmen und die einzelnen Daten auch in einzelne Zellen einzutragen.

Wenn das aufgrund der Marotten des Kunden keine Option ist, muss man eben dann doch ein Makro nehmen. Und dem Kunden gegenüber andeuten, dass man gegen einen Aufpreis auch eine Korrekturmöglichkeit einbauen kann. Und auf Dauer überlegen, ob man so einen Kunden wirklcih braucht. (Wobei die letzten beiden Punkte bei Familienangehörigen mit den üblichen Problemen verknüpft sind. Mischpoche - jiddisch für Familie - ist bekanntlich nichts zum Essen, sondern was zum Kotzen.)

Antwort bewerten Vielen Dank für Deine Bewertung

Die meisten solcher Probleme, die einen Zirkelbezug bergen, lassen sich entknoten.

Klassisch würde man die Überstunden berechnen, indem man pro Tag Endezeit - Anfangszeit nimmt, diese Zeiten aufsummiert und von Sollstunden pro Tag * Anzahl Tage abzieht.

Du hast also pro Tag in einer Überstundenspalte einen kumulierenden Wert.

Antwort bewerten Vielen Dank für Deine Bewertung

Zellen gibts in xl ganz umsonst, störende kann man sogar ausblenden(ganze Zeilen/Spalten). Also in einer Zelle rechnen+speichern für den nächsten Zugriff, in der anderen das Ergebnis darstellen: wo ist das Problem?

Vielleicht willst Du den ganzen Monat in einer Zelle zusammenfassen? Davon kann ich Dir nur abraten: Jeder Tag eine Zeile ist bewährte Zeitkontenführung - und glaub mir: jede Zeitabrechnung arbeitet nach diesem Schema, weil es Narren-sicher, nachvollziebar und genau ist!

Sollte Dein Problem sein, dass Du negative Überstunden so einfach nicht darstellen kannst: auch dafür kann ich Dir auf Nachfrage eine -sogar mehrere- einfache Lösung(en) liefern!

Selbst gegen unbefugte Nachbesserungen kann man Sicherungen einbauen, das ist aber etwas aufwändiger! (und alarmt im einfachen Fall schon bei einfachem Vertippen und korrigieren)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Galdur
27.09.2016, 22:13

Hey, danke für deine Antwort.

Negative Überstunden sind nicht das Problem, aber danke für das Angebot :)

Es ist überhaupt kein Problem, immer eine neue Zelle für eine neue Speicherung zu nehmen, ich habe lediglich gefragt, ob man das elegant machen kann mithilfe von Iteration :p

0

Die Anforderung ist etwas nebulös beschrieben - was ist diese Konstante? Eine Soll-Arbeitszeit je Woche oder ähnliches?
Was nichts bringt, ist mit dem Kopf durch die Wand und Excel verbiegen. Ein Zirkelbezug funktioniert nicht, eine Formel kann keinen festen Wert hinterlassen, wenn sich die zugrunde liegenden Werte ändern und iterativ läuft da auch nichts.

Wenn etwas von der Anzahl der Überstunden, die sich aus Arbeitsende-Arbeitbeginn-Sollarbeitszeit ergeben, noch abgezogen werden soll (z.B. freie Tage), dann muss das irgendwo erfasst und in der Formel berücksichtigt werden. Entweder steht eine Formel in einer Zelle oder ein fester Wert, niemals beides.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Galdur
27.09.2016, 21:30

Okay, das ist relativ schade, dann lässt sich das Problem mit Excel wohl nicht lösen.

Genau, diese Konstante ist von der Bedeutung für das Problem irrelevant, aber ja, es ist eine Soll-Anzahl an Stunden.

Ich dachte nur, es gibt vielleicht eine Art "Stack-Funktion" in Excel, welches auf einem iterativen Prinzip beruht, sodass Zellen sich selbst in ihrer Formel benutzen können (also ihren Wert). Aber na, gut, dann ist das so. Hättest du vielleicht eine andere Lösung für das Problem, das nicht auf Iteration beruht? Die Überstunden müssen quasi bei jeder Änderung der Arbeitszeit aktualisiert werden.

0
Kommentar von Suboptimierer
28.09.2016, 11:38

Sehe ich genauso. Selbst wenn man das irgendwie mit Iterationen gebacken bekommen könnte, würde ich davon abraten. Das sind so Spielereien... Erfahrungsgemäß hat man an solchen Sheets nicht lange Freude. 

Also wenn es nicht nur zu Übungszwecken für das Verständnis von Interationen dienen soll: Finger weg!

0

Warum benötigst du den für die aktuelle Anzahl an Überstunden den Wert der Zelle selbst? Wenn du diesen Wert mit verwendest, würde sich der berechnete Wert ja immer wieder ändern, da nach jeder Berechnung der Wert garnicht mehr stimmt. Das nennt sich denn Zirkelbezug.

Du musst immer aus anderen Zellen/Werten den Wert einer Zelle berechnen. Unter Umständen nimmst du eine andere Zelle mit einer Zwischenrechnung zur Hilfe und lässt dann die Zeile ausblenden.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Galdur
27.09.2016, 20:08

Ehm... genau das, was du in deinem ersten Absatz geschrieben hast, ist auch Sinn und Zweck :D - Genau das will ich.

Der Wert soll sich selbstverständlich immer ändern, sonst hätte das ganze ja keinen Sinn. Sobald man die Überstunden ändert, soll sich auch die aktuelle Anzahl der Überstunden ändern.

Was ich suche ist nach einer Art "Gedächtnis" bzw. "Speicherfähigkeit" der Zelle.

0

Was möchtest Du wissen?