HERBERS Excel-Forum - das Archiv

Thema: Test

  • Test
    02.08.2025 19:15:46
    Mario Hofer
  • AW: Test
    02.08.2025 21:25:57
    Yal
Test
Mario Hofer
Hallo zusammen,

ich habe für eine Reihe von Tagen stundenweise Werte (z.B. Aktienpreis).

Tag             Stunde 1      Stunde 2      ...      Stunde 24 
1.8.25             5,5             5,6                         6,1                  
2.8.25             6,2             5,9                         7,0                   

Ich suche eine elegante Lösung um die Stunden mit der größten Differenz (Spread) zu ermitteln. Dabei muss die erste Stunde ("Kauf") niedriger sein als die zweite Stunde ("Verkauf"). Dann suche ich die zweitgrößte Differenz, bei denen beide Stunden aber unterschiedlich zur ersten Differenz sein müssen. Und so weiter bis maximal 12 Zahlenpaare möglich sind.

Ich bekomme das zwar manuell über Bildung der Differenz für jede Stunde zum Minimum des Zeitraums davor hin, aber das wird ziemlich aufwändig.
Gerne nehme ich auch VBA Code für eine eigene Funktion als Anregung auf, ich möchte aber die Zahl der Spalten, die ich benutzten muss so überschaubar wie möglich halten.

Aussehen soll die Tabelle dann wie folgt:

Tag             Stunde 1      Stunde 2      ...      Stunde 24      Min 1      Max 1      Min 2      Max 2       ...
1.8.25             5,5             5,6                         6,1                   1             24             2             12         ...
2.8.25             6,2             5,9                         7,0                   2             24             5             15         ...

Im Forum habe ich nichts gefunden.

Vielen Dank für jede Anregung und Unterstützung,

Mario
AW: Test
Yal
Hallo Mario,

das es sich um reine Datenhandlung geht, würde ich Power Query vorschlagen.
Es geht wie folgt (bin nicht an Rechner, daher spärliche Beschreibung):
- Liste in einer Tabelle umwandeln: Menü "Einfügen", "Tabelle"
- Menü "Daten", "aus Tabellen/Bereich"
- Du bist im Power Query Editor
- Spalte "Datum" markieren
- Menü "Transformieren", "Spalte entpivotieren", "andere Spalten entpivotieren"
- Spalte "Attribut" in "Stunde" umbenennen,
- nach"Datum" und "Stunde" sortieren
- Menü "Spalte hinzufügen", Indexspalte ab 0 einführen, Indexspalte ab 1 einführen
- Menü "Start", "Abfragen zusammen", "in neue Anfrage zusammenführen"
- gleiche Abfrage in der zweiten Teil reinbringen
- in der ersten Abfrage Spalte "Index 0" wählen, in der zweiten "Index 1"
- neue Spalte erweitern (Doppelpfeil), nur das Feld "Wert" gehakt lassen ("Stunde" könnte für eine Prüfung nützlich sein)
- Du hast nun immer Stunde und Stunde danach nebeneinander,
- "Spalte hinzufügen", "benutzerdefinierte Spalte", Stunde unterschied rechnen,
- Menü "Datei", "Schließen & lassen in...", "Pivottable"
- Pivottable gestalten, Min als Wert Formel einstellen.

VG
Yal