19.03.2020, 18:46 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2020, 18:48 von Berger1012.)
Hallo zusammen, ich hänge aktuell an einer kleinen Excel Berechnung und hoffe es hat hier jemand einen Lösungsvorschlag für mich. Im Anhang habe ich euch meine aktuelle Tabelle eingefügt.
Folgendes Problem habe ich: In der Tabelle befinden sich verschiedene Tage mit Uhrzeiten und zugehörigen Preisen. Jeder Tag startet um 15 : 30 : 00. Allerdings hat jeder Tag eine unterschiedliche Dauer und somit eine unterschiedliche Anzahl von Preisen. Ich benötige nun pro Tag einen maximalen Preis. Nun kommt der verzwickte Teil. Ich benötige nicht das Maximum des gesamten Tages sondern nur von einer Art Zone.
Im Endeffekt steigt der Preis an irgend einem Punkt über den Preis um 15 : 30 : 00 an. Anschließend kann es sein, dass der Preis wieder unter den Preis vom Tagesstart sinkt. Nun benötige ich aus dieser ersten Zone in der der Preis zum ersten mal den Startpreis übersteigt das Maximum. Z.B.: Der Preis ist am Start bei 5, steigt dann auf 8, sinkt dann auf 4, steigt dann auf 20 und sinkt dann wieder auf 6. Dann benötige ich für diesen Fall die Zahl 8. Die Zahl 20 ist dann nicht mehr relevant. Ich hoffe dies ist verständlich erklärt.
In meiner Excel Tabelle würden die Beispiele wie folgt aussehen: 01.01.2020: 12 02.01.2020: 18 03.01.2020: 11
Ich entschuldige mich dafür, dass ich nicht selber auf die Lösung komme und hoffe, dass sich hier ein Experte findet der mir helfen kann. Ich lerne in diesem Forum wirklich viel und möchte mich an dieser Stelle einmal für die Hilfsbereitschaft bedanken. Außerdem möchte mich im voraus für jede Antwort bedanken.
19.03.2020, 20:48 (Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2020, 20:48 von Berger1012.)
Hallo, vielen herzlichen Dank für deine Antwort!
Entschuldige bitte. Aus irgend einem Grund habe ich eine veraltete Version der Tabelle hochgeladen. Anbei sende ich nun die richtige Version. Es tut mir wirklich leid, dass mir dieser Fehler passiert.
Dann versuche ich es nochmal am Beispiel vom 01.01.2020 zu erklären. Anbei sende ich eine Grafik mit der ich das Ganze nun veranschaulichen möchte.
In der Grafik ist ein Diagramm, welches zwei Achsen hat. Auf y-Achse ist der Preis aufgetragen. Auf der x-Achse ist die Zeit aufgetragen. Zu sehen sind hier nur Daten vom 01.01.2020.
Wichtig für die Berechnung ist im ersten Schritt der Preis um 15 : 30 : 00. Dieser liegt hier bei 10. Man kann nun den Preis von 0 bis 10 sozusagen als neutrale Zone ansehen. Die 10er Preislinie ist in der Grafik als rote Linie eingezeichnet.
Vom Tagesstart aus nimmt der Preis nun über den Tag hinweg verschiedene Preise an. Dieser Preisverlauf ist als graue Linie dargestellt. An jeder Preisänderung ist zusätzlich der jeweilige Preis als graue Zahl angefügt.
Folgendes passiert nun: Der Preis startet bei 10, steigt auf 11, steigt auf 12 und sinkt dann auf 9. Da 9 kleiner als 10 ist und somit die rote Grenze unterschritten wird, bildet sich nun die gelb eingezeichnete Zone. Dies ist nun die für die Berechnungen relevante Zone.
Nun passiert folgendes: Der Preis steigt auf 13, steigt auf 17, sinkt auf 9 und steigt dann auf 10. Beim Anstieg von 9 auf 13 tritt der Preis wieder aus der neutralen Zone (rote Linie) heraus und bildet somit eine neue Zone. Diese Zone ist blau dargestellt. Allerdings ist diese Zone irrelevant und soll nicht betrachtet werden.
Begründung: Für die Berechnung ist nur die erste Preisschwankung des Tages von Bedeutung. Diese startet an dem Punkt, an dem der Preis das erste mal den Startpreis überboten hat und endet an dem Punkt, an dem der Startpreis das erste mal unterschritten wird (gelbe Zone in Grafik). Alle weiteren Preisschwankungen sind nicht von Bedeutung und sollen auch nicht berücksichtigt werden. Aus dieser ersten Preisschwankung soll nun der maximal erreichte Wert bestimmt werden.
Ich hoffe ich habe es nun verständlich ausgedrückt. Ich möchte mich dafür bedanken, dass du mich trotz meiner Umständlichen Erklärungen so gut wie möglich unterstützt! Außerdem wünsche ich dir noch einen schönen Tag.
In der angehängten Datei findest du einen Lösungsvorschlag mit einer Hilfsspalte und einer (recht komplexen) Formel
In der Hilfsspalte wird geprüft, ob der jeweilige Preis über dem Tagesstartwert liegt. Die Formel in K2 ermittelt mithilfe mehrere verschachtelter Funktionen BEREICH.VERSCHIEBEN, INDEX und VERGLEICH dynamisch für den entsprechenden Tag den passenden Bereich (gemäß deinen Vorgaben), von dem dann der MAX-Wert ermittelt wird. (ähnliches Prinzip wie im Lösungsvorschlag bei deinem vorigen Thread)
Musst du jetzt mal prüfen, ob diese Formel das gewünschte Ergebnis liefert.
Gruß Fred
Folgende(r) 1 Nutzer sagt Danke an Fred11 für diesen Beitrag:1 Nutzer sagt Danke an Fred11 für diesen Beitrag 28 • Berger1012
Hallo, vielen Dank für deine Antwort. Deine Lösung für das Problem funktioniert super und ist genau das, was ich gesucht habe. Danke!
Zu deiner Frage: Ja das hier ist sozusagen die Fortsetzung. Dein Lösungsvorschlag aus dem anderen Eintrag hat super geklappt, allerdings habe ich festgestellt, dass es für mich einfacher wäre wenn sich die Excel Tabelle selbst anpassen würde.
Ich wünsche dir noch ein schönes Wochenende und möchte mich nochmal herzlich bedanken.
Hallo zusammen, ich hätte nun noch eine weitere Frage und hoffe auf eure fachkundige Hilfe. Um mein Problem zu verdeutlichen, verwende ich im Folgenden die Tabelle von Fred. Diese habe ich euch auch nochmal zusätzlich im Anhang eingefügt.
Wie im Verlauf des Foreneintrags zu lesen, macht die Tabelle folgendes: 1.) Preis des Tagesstarts auslesen und als "Grenze" festlegen. 2.) Über die Hilfsspalte bestimmen, ob die folgenden Preise über dem Tagesstart liegen oder nicht. 3.) Den Maximalen Preis der ersten Preisschwankung des Tages bestimmen.
Die Tabelle von Fred klappt soweit auch wirklich toll, deshalb verwende ich diese nun als Vorlage.
Folgendes möchte ich nun aber ändern: Es soll nun nicht mehr der erste Preis des Tages als Startpreis definiert werden, sondern der zweite. Ich würde dabei gerne wissen, was ich verändern muss um den Startpreis festzulegen. Die Formel wird nämlich in einer längeren Preistabelle verwendet und ich müsste in dieser die selbe Berechnung mit dem Startpreis bis zu dem sechsten Preis des Tages durchführen.
Legt man nun den zweiten Preis des Tages als Startpreis fest, so sollen folgende Werte als Ergebnis ausgegeben werden: - 01.01.2020: Startpreis 15, Maximalpreis 20 - 02.01.2020: Startpreis 15, Maximalpreis 18 - 03.01.2020: Startpreis 11, Maximalpreis 12
Ich möchte mich im voraus schon für euren Aufwand bedanken und wünsche euch noch einen schönen Tag.
ich habe die Formel in der Hilfsspalte (Spalte D) so abgeändert, dass jetzt geprüft wird, ob der jeweilige Preis über dem zweiten Wert des Tages liegt.
Formel in Zelle D2: =WENN(A2=A1;(C2>INDEX($C$2:$C$25;VERGLEICH(A2;$A$2:$A$25;0)+1))*1;0)
Die eigentliche Formel in Spalte K, die basierend auf der Hilfsspalte den höchsten Wert ermittelt, blieb unverändert.
Sie liefert jetzt für diese Beispielwerte dein gewünschtes Ergebnis.