Microsoft Excel

Das Portal zum Thema Excel-Formeln

Gruppe: Iteration - BEITRAG: Höchstwert bzw. Tiefstwert einer Zelle einfrieren


Aufgabe
Als Formelergebnis tauchen in Zelle A1 nach diversen Berechnungsvarianten Werte auf. Du willst jetzt das jeweils höchste und niedrigste Ergebnis und wann es erzielt wurde (Zeitstempel), einfrieren.

Das wird ja als "unmöglich" und nur mit VBA lösbar abgetan - Blödsinn: das funktioniert auch mit Iteration.

Lösung
Die veränderbare Zelle ist A1

Menü Extras - Optionen - Berechnung - Iteration aktivieren.

Wenn A1 die veränderliche Zelle ist, dann schreibe in A2:
=WENN(A1 > B2;"Höchstwert vom: "&TEXT(JETZT();"TT.MM.JJ hh:mm:ss");A2)
und in B2:
=WENN(A1 > B2;A1;B2)

Beim Tiefstwert eliminieren wir die Null (wäre ja immer der Beginn).

A3:
=WENN(A1 < B3;"Tiefstwert vom: "&TEXT(JETZT();"TT.MM.JJ hh:mm:ss");A3)
B3:
=WENN(A1 < B3;A1;WENN(B3=0;"";B3))

tricky Alternative

Man kann mit einem Zirkelbezug klar kommen, ohne dass die Excel-Iteration aktiviert wird.
Am Beispiel des Max-Protokolls geht das wie folgt:

A1:=C2
C1:=WENN(E2>A1;E2;A1)
B2:=A1

Dann selektiere den Bereich B1:C2 und erzeuge über Daten>Mehrfachoperation.... (bzw. Daten>Tabelle....) eine Mehrfachoperation
mit Werte aus Spalte:A1

Nun erscheint die Formel
C2: {=MEHRFACHOPERATION(;A1)}

in E2 werden nun immer neue Werte eingegeben. Mit
E3:=C2
wird das Maximum protokolliert, also nur der Wert aus E2 übernommen, wenn er größer ist als der bisherige Wert in E3.

Zwischen A1 und C2 besteht ja eigentlich ein Zirkelbezug, aber Excel stört sich nicht daran.