If-Anweisungen in Formeln

Überblick

Um einer Variable abhängig von einer Bedingung unterschiedliche Werte oder Formeln zuzuweisen, können Sie if-Anweisungen (Wenn-Anweisungen) verwenden. Diese müssen immer die Struktur if Bedingung then X else Y (wenn Bedingung dann X, sonst Y) haben.

Dieser Artikel enthält folgende Abschnitte:

Optionen in If-Anweisungen

Sie können mehrere Bedingungen mit „and“ und/oder „or“ verknüpfen:

  • if Bedingung1 or Bedingung2 then Wert1 else Wert2
  • if Bedingung1 and Bedingung2 then Wert1 else Wert2

 

Sie können Bedingungen auch mit einer Liste verknüpfen, z. B. mit der Syntax IN:

  • if month in [11, 12, 1, 2] then 90% else 100%:  Dies bedeutet: Wenn der Monat Nov., Dez., Jan. oder Feb. ist, werden 90 % zurückgegeben, ansonsten 100 %.
  • Sie können auch Dimensionen/Dimensionselemente in if-Anweisungen verwenden. Weitere Informationen finden Sie unter Dimensionselemente in Formeln.

 

Sie können Bedingungen auch mit dem Ausschluss einer Liste verknüpfen, z. B. mit der Syntax NOT IN (nicht in):

  • if month not in [11, 12, 1, 2] then 90% else 100%: Dies bedeutet: Wenn der Monat nicht Nov., Dez., Jan. oder Feb. ist, werden 90 % zurückgegeben, ansonsten 100 %.

 

Sie können if-Anweisungen auch verschachtelt verwenden, zum Beispiel:

  • if Bedingung1 then Wert1 else if Bedingung2 then Wert2 else [...]

 

  • Sie können jede dieser Ebenen mit Umschalt+Enter in separate Zeilen Ihres Formeleditors aufteilen. 
  • Beachten Sie, dass jede if-Anweisung eine else-Schleife haben muss, sonst gibt xP&A einen Fehler zurück.
Beispiele für If-Anweisungen
  • if Zeitschritt > 4 then 1 else 0
  • if Variable1 > Variable2 then 100 else 200
  • if Zeitschritt > 4 and Zeitschritt < 10 then 1 else 0
  • if Variable1 < 10 then 100 else if Variable1 < 20 then 200 else 300