Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Faulhyvo
Contributor II
Contributor II

Verschachtelte If Formel

Hallo zusammen, 

ich verzweifle an folgender Formel: 

Betrag = 25% des Streitwertes und höchstens 10 Prozent der neuen Rechnung, wobei der Mindestbetrag von 300 Euro nicht unterschritten werden darf

if([25%]<='300','300',(if([25%]<=[10%],[25%])),[10%])

Die Werte in [] sind vorherige Ergebnisse anderer Formeln. 

Labels (1)
2 Solutions

Accepted Solutions
marcus_sommer

Vielleicht so:

= rangemax(300, rangemin([25%], [10%]))

View solution in original post

berndjaegle
Creator II
Creator II

if(0.25 * Erlösverlust <= 300,
'300',
if(0.25 * Erlösverlust <= 0.10 * Rechnung,
0.25 * Erlösverlust,
0.10 * Rechnung
)
)

View solution in original post

5 Replies
marcus_sommer

Vielleicht so:

= rangemax(300, rangemin([25%], [10%]))

Faulhyvo
Contributor II
Contributor II
Author

Das klappt leider nicht... ich habe nicht die Aggregierungsfunktion "Berichmax", nur Max() und Min() ... steh hier irgendwie auf dem Schlauch. 

Habe schon weitere erfolglose Versuche gestartet: 

1) if(0.25*Erlösverlust<='300','300',Erlösverlust)

2) if([Höhe Strafzahlung]>=0.1*RECHN_BETRAG,0.1*RECHN_BETRAG,[Höhe Strafzahlung])

 

Vielleicht hat noch einer eine Idee

berndjaegle
Creator II
Creator II

if(0.25 * Erlösverlust <= 300,
'300',
if(0.25 * Erlösverlust <= 0.10 * Rechnung,
0.25 * Erlösverlust,
0.10 * Rechnung
)
)

Faulhyvo
Contributor II
Contributor II
Author

Super, das funktioniert schon. Allerdings habe ich noch Fälle in denen 25% des Erlösverlustes mehr als 10% des Rechnungsbetrages sind. Dann nimmt er mit der o.g. Formel die 25% des Erlösverlustes, die aber auch unter 300,00 € sein können. Hier fehlt mir also noch ein Zusatz, dass auch hier (also nie) der Betrag unter 300,00 € kommen darf. 

 

Danke für die tolle Hilfe 🙂  

Faulhyvo
Contributor II
Contributor II
Author

Habe es wie folgt gelöst: 

if(0.25 * Erlösverlust <= 300,
'300',
if(0.25 * Erlösverlust <= 0.10 * RECHN_BETRAG,
0.25 * Erlösverlust,
if(0.10 * RECHN_BETRAG <=300,
'300',
0.10 * RECHN_BETRAG
)
)
)