Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hallo zusammen,
hoffe hier kann mir Jemand helfen. Habe folgendes Problem.
Ausganstabelle (Diagramm)
Jahr | ID | KalenderTag | Stunde | Wert | Flag |
2013 | 1 | 1 | 01 | 100 | - |
2013 | 1 | 1 | 01 | 20 | X |
2013 | 1 | 1 | 02 | 60 | |
2013 | 1 | 2 | 01 | 70 | |
2013 | 2 | 1 | 01 | 80 | |
2013 | 2 | 1 | 01 | 10 | x |
Es soll nun der maximale Wert je ID geliefert werden. Werte die bei Flag ein X haben müssen ausgeschlossen werden. D.h er darf nicht 100 + 20 = 120 rechnen und maximalen Wert 120 ausgeben für ID 1 oder 80 + 10 = 90 für ID 2.
Gewünschte Ausgabe:
Jahr | ID | Wert |
2013 | 1 | 100 |
2 | 80 |
Das müsste über die Formel gehen bei Attribut Wet und übe Set analysis um die X werte auszuschließen
Dank für die Hilfe
Verwenden Sie eine Pivot-Tabelle mit "Jahr" und "ID" als Dimensionen und
Max(If(Upper(Flag)<>'X',Wert))
als Formel. Kein Set Analysis ist nötig.
HIC
Hallo,
danke für die Antowrt.
Nun habe ich noch folgendes Problem. Eine ID beinhaltet mehrere M_ID welche einen Wert haben können
Jahr | ID | M_ID | Flag | Wert |
2013 | 1 | 1 | - | 100 |
1 | X | 20 | ||
2 | - | - | ||
2 | X | - | ||
3 | - | - | ||
3 | X | - | ||
2013 | 1 | 1 | - | 80 |
1 | X | 10 | ||
2 | - | 100 | ||
2 | X | - | ||
3 | - | |||
3 | X | - |
1) billde die Summe aller M_ID ohne den Wert X
2) suche das Maximum
Deine Lösung funktioniert bei ID die nur eine M_ID haben
ID 1: 100 + 0 + 0 (summe aller M_ID) = 100
ID2: 80 + 100 + 0 (summe aller M_ID) = 180
100und 180 ist die Grundlage für das suchen des Max Wert.
Danke Thomas
Max(Aggr(Sum(If(Upper(Flag)<>'X',Wert)),Jahr,ID))
HIC
Hallo
Danke für die Antwort.
Hat noch nicht funktioniert.
Werde mal schauen wie der falsche Wert zustande kommt.
Danke Thomas
Hallo,
können wir uns die Summe der M_ID ausgeben lassen um zu prüfen ob die Summe gebildet wird.
Danke Thomas
Hallo,
habe nun ein Beispiel erstellt.
Er soll nun den Tag einer ID durchsuchen und den Max Wert ausgeben. Bei ID 2 ist der Max Wert in der Stunde 2
Wert = 200. Ausschließen soll er wie oben auch Flag = X
Aktuelle Ausgabe mit Formel Max(Aggr(Sum(If(Upper(Flag)<>'X',Wert)),Jahr,ID))
Wert 380 falsch -> Wert 200 richtig da max im Tag max in Tag 1
Wert 100 richtig
Danke Thomas
Hallo,
habe die Formel wie folgt geändert.
Max(Aggr(Sum(If(Upper(Flag)<>'X',Wert)),Stunde,ID))
jetzt wir für ID2, der Wert 200 ausgeben
Danke Thomas