Rechenoperationen und Formelsyntax

QVANTUM unterstützt die auf dieser Seite definierten Rechenoperationen und Formeln.

Die hier aufgeführten Rechenoperationen und Formeln lassen sich sowohl im Formelmanager (hier finden Sie weitere Hilfe zur Eingabe von Formeln im Formelmanager) als auch in Berechnungsspalten von Formularen verwenden.



Rechenoperationen

Addition (+)
Subtraktion (-)
Multiplikation (*)
Division ( / )
Runde Klammern

 

Achtung: Beachten Sie, dass die Leistung eingeschränkt ist!

Durch diese Aktion wird die maximal zulässige Größe des Formulars überschritten, was zu einer Beeinträchtigung der Leistung beim Aufbau des Formulars führen kann. Möchten Sie dennoch fortfahren?

Referenzen auf andere Dimensionselemente 

Wenn nicht anders beschrieben, werden für die Argumente einer Funktion bei Kennzahlformeln in eckigen Klammern gesetzte Kennzahlenschlüssel (z.B. in der Form ABS([DELTA])) oder Konstanten verwendet.

Bei benutzerdefinierten Zeilen- oder Spaltendefinition in Formularen werden für die Argumente einer Funktion in eckigen Klammern gesetzte Zeilen- oder Spaltenbezeichner (z.B. ABS([3]) oder ABS([B])) oder Konstanten verwendet.

Grundsätzlich können auch aus den genannten Angaben gebildete Formelausdrücke evtl. unter Verwendung von Klammerungen verwendet werden (z.B. ABS(([A]-[B])/[C])).

Auch Funktionsaufrufe sind dabei in den Formelausdrücken erlaubt (z.B. ABS(DIVIDE([1];[2];BLANK)).
Groß-/Kleinschreibung ist bei Funktionsnamen grundsätzlich egal.

Bei einer Division durch Null wird der Wert UNGÜLTIG erzeugt, es sei denn die Funktion DIVIDE (siehe unten) wird für die Division benutzt.

Leere Zellen haben den Wert BLANK.

Eine ausgewertete Bedingung (siehe WENN-Funktion) hat den Wert TRUE, wenn sie erfüllt ist sonst FALSE.  

Zum Beispiel:

Kennzahl Erlöse = [VE]*[PPE]
VE = Schlüssel von „Verkaufte Einheiten“
PPE = Schlüssel von „Preis pro Einheit“

Formeln und Funktionen

ABS

Die Funktion berechnet den Betrag einer Zahl.

Syntax:

ABS(<Argument>)

Sonderfälle:

  • Betrag von UNGÜLTIG = UNGÜLTIG
  • Betrag von BLANK = BLANK

COALESCE

Gibt den ersten Ausdruck zurück, der nicht als BLANK ausgewertet wird. Wenn alle Ausdrücke als BLANK ausgewertet werden, wird BLANK zurückgegeben. Die Funktion hat mindestens 2 oder mehr Argumente.

Syntax:

COALESCE(<Argument1>; <Argument2> [;<Argument3>…])

DIVIDE

Führt eine Division aus und gibt ein alternatives Ergebnis oder BLANK bei Division durch 0 zurück.

Syntax:

DIVIDE(<Dividend>; <Divisor> [;<alternatives Resultat])

Das alternative Resultat für eine Division durch 0 muss eine Konstante sein. Fehlt die Angabe so ist bei Division durch 0 das Resultat BLANK.

Sonderfälle:

  • UNGÜLTIG / x und x / UNGÜLTIG ergibt UNGÜLTIG
  • BLANK / BLANK ergibt BLANK
  • x / BLANK ergibt das alternative Resultat
  • x ist eine beliebig gültige Zahl

RUNDEN

Rundet eine Zahl auf die angegebene Anzahl von Stellen.

Syntax:

RUNDEN(<Argument> [; <Anzahl Stellen>)

Mit <Argument > bestimmen Sie, welche Zahl gerundet werden soll. Die Anzahl der Stellen ist die Anzahl der Dezimalstellen, auf die Sie runden möchten. Bei einem negativen Wert werden Stellen links vom Dezimaltrennzeichen gerundet. Beim Wert 0 oder wenn die Anzahl der Stellen nicht angegeben wird, wird auf die nächste ganze Zahl gerundet. Die Anzahl Stellen muss eine Konstante sein.

SIGN

Bestimmt das Vorzeichen einer Zahl. Die Funktion gibt 1 zurück, wenn die Zahl positiv ist; 0, wenn die Zahl 0 ist; oder -1, wenn die Zahl negativ ist.

Syntax:

SIGN(<Argument>)

Sonderfälle:

  • Betrag von UNGÜLTIG = UNGÜLTIG
  • Betrag von BLANK = BLANK

WENN

Prüft eine Bedingung und gibt einen Wert zurück, wenn diese TRUE ist; andernfalls wird ein zweiter Wert zurückgegeben.

Syntax:

WENN(<Bedingung>;<Wert wenn TRUE>;<Wert wenn FALSE>)

<Bedingung> setzt sich zusammen aus einem <Argument1> und einem <Argument2>, die durch einen Vergleichsoperator voneinander getrennt sind. Als Vergleichsoperatoren zugelassen sind:

<, <=, >, >=, =, <> bzw. !=  

Sonderfälle:
Sind <Argument1> oder <Argument2> leer, wird das Argument als 0 interpretiert.

ZEITVERSATZ

Diese Funktion ermöglicht es, in einer Kennzahlenformel auf ein Vorgängerelement der Zeit-Dimension zuzugreifen.

Syntax:

ZEITVERSATZ(<Argument>;<Relativer Vorgänger>)

Voraussetzung ist die Definition einer Dimension mit der Dimensionsrolle Zeit. Typischerweise sind dies die Monate. Die Funktion wirkt nur auf den Blättern (unterste Ebene) dieser Dimension.

Das <Argument> muss ein Kennzahlschlüssel sein, ein Formelausdruck ist nicht erlaubt. In Formularformeln steht die Funktion nicht zur Verfügung.

Der <Relative Vorgänger> ist eine negative Konstante und bezeichnet die Schrittweite, um das Vorgängerelement ermitteln zu können.

Das Vorgängerelement ist das in der Reihenfolge der Dimensionselemente relativ um die angegebene Schrittweite weiter oben liegende Blatt. Elemente, die keine Blätter sind, werden dabei nicht mitgezählt. Die Funktion wirkt gemäß der Reihenfolge der Dimensionselemente nicht auf dem 1. Blatt, welches aber auch nicht eingabefähig ist. Deshalb muss der Startwert in einer weiteren Kennzahl eingegeben werden. Eine Formel für eine Kennzahl x kann in der ZEITVERSATZ-Funktion ausnahmsweise die Zielkennzahl x auch als Argument verwenden (z.B. im Sinne von [ANZAHL_KUNDEN] = [KUNDEN_ZUGANG] + ZEITVERSATZ([ANZAHL_KUNDEN];-1)).

MODULO

Modulo gibt den Rest einer ganzzahligen Division zurück.

Beispiel:

15 mod 12 = 3, da 15 : 12 = 1, 3 bleibt übrig

Syntax:

MODULO(<Dividend>; <Divisor>)

Beispiel:

Im folgenden Beispiel wurde die Formel MODULO([B];[A]) verwendet.  

QUOTIENT

Bildet den Quotient aus Divident und Divisor. Zurückgegeben wird immer eine Ganzzahl.

Syntax: 

QUOTIENT(<Dividend>; <Divisor>) 

 

Beispiel:

QUOTIENT(5;3) 

Das Ergebnis ist 1, da die Nachkommastellen entfallen.

 


Folgende Funktion befinden sich noch in der Vorbereitung:

MIN/MAX (Gibt Minimal-Wert bzw. Maximal-Wert aus einer Liste von Parametern zurück)

BLANK (gibt leeren Wert zurück, z. B. um Zellen im Falle einer WENN-Funktion leer zu lassen)