Zum Hauptinhalt springen

🔢 Funktionen und Beispiele im Estimator

Hier findest du Beispielformeln und Funktionen für deine perfekte Berechnung.

Patric avatar
Verfasst von Patric
Vor über 2 Wochen aktualisiert

In der Preiskomponente könntest Du die Formel dann z. B. so hinterlegen:

(LOOKUP("DEINE-LookUp-Table_ID", Auflage, Seitenzahl, Maschinentyp)*100)*Auflage

Falls ein Standardwert aus der Lookup-Tabelle zurückkommen soll, wenn in der Tabelle der Wert z.B. nicht existieren sollte, dann kannst Du auch damit arbeiten:

(LOOKUP_WITH_DEFAULT("DEINE-LookUp-Table_ID", 1000, Auflage, Seitenzahl, Maschinentyp)*100)*Auflage

Hier würde dann der Wert 1000 zurückkommen, wenn kein Wert für die eingegebenen Parameter in der Lookup-Tabelle gefunden werden konnte. Anstelle von 1000 kann natürlich auch eine komplexere Berechnung oder eine andere Formel hinterlegt werden.


Grundsätzlich sind viele Funktionen und Variablen möglich, wie z. B.:

if, not, min, max, sum, and round

Folgende grundlegende mathematische Funktionen sind möglich:

<, >, <=, >=, <>, !=, =,

IF, AND, OR, XOR, NOT, SWITCH, MIN, MAX, SUM, AVG, COUNT, ROUND, ROUNDDOWN, ROUNDUP, ABS, INTERCEPT

Hier findest du einige gängige Beispiele:


Minimale oder maximale Werte ausgeben:

Max(10,9,8,7) => 10

Min(10,9,8,7) => 7


Beispiele für Runden könnten sein:

Round(8.3) => 8

Round(8.5463,2) => 8.55 (der zweite Wert bestimmt die Dezimalstelle, auf die gerundet werden soll
Rounddown(55.55) => 55

Roundup(55.55) => 56
Round(Seitenanzahl/2)*2 => kann hilfreich sein um sicher zu sein immer mit einer geraden Zahl zu rechnen


Eine Rangeswitch-Funktion könnte so aussehen:
RANGESWITCH(Seitenanzahl,1,64,64,65,128,128,129,240,240,241,300,300,11111)

Wenn die Seitenzahl 1 bis 64 beträgt, wird der Wert 64 zurückgegeben, bei 65 bis 128 der Wert 128, usw.


Eine Switch-Funktion fragt einen bestimmten Wert ab und arbeitet nicht mit einer range:

SWITCH(Seitenanzahl,8,80,16,160,200,2000,11111)

Sollte hier also die Seitenanzahl 8 sein, bekomme ich den Wert 80 zurück, bei einer Seitenanzahl von 200 den Wert 2000. Sollte kein Wert zugeordnet werden können ist dann der alternative Wert, der dann immer zurückkommt 11111


Alternativ kannst Du natürlich auch eine verschachtelte wenn/dann funktion einsetzen:
IF(placeholder_with_twenty<=5, 1, IF(placeholder_with_twenty<=10, 2, IF(placeholder_with_twenty<=15, 3, IF(placeholder_with_twenty<=20, 4, 5))))

=> 4
placeholder_with_twenty ist als Variable mit dem Standardwert 20 eingesetzt. Damit lassen sich Formeln übrigens sehr gut und übersichtlich testen.

Oder auch nur eine sehr einfache if-Funktion:
if(128>64,1,0) => 1

Natürlich kann auch ein Boolean mit true/false integriert werden:

if(Nachdruck= true and Werkzeugkosten="mittel",4,5) => 4

Alternativ kannst Du auch mit z.B. AND arbeiten:

IF(AND(328>64, 328<=265), 1, 2) => 2

Hier ist der Input 328 - sollte der Input größer als 64 sein UND kleiner als 265, dann bekommst Du 2 zurück.


Mit CONCAT kannst Du dir einen String bauen, der sich auch mehreren Werten zusammenstellt:


CONCAT(Produktbreite, "x", Produkthöhe) => "210x297"


Du kannst auch auf eine Berechnung von einer anderen Preiskomponente zurückgreifen:

URL der Preiskomponente findest du in der URL.

PREVIOUS_RESULT('Deine-Pricecomponent-ID', 'internal_costs')

Es kann auch total_costs, external_costs, labor_costs und material_costs definiert werden.


Formeln können auch kommentiert werden. Das kann hilfreich sein um zu erklären, was in der Berechnung eigentlich passiert:

/*
Dies ist ein mehrzeiliger oder auch nur einzeiliger Kommentar
*/

SWITCH(Seitenanzahl,8,80,16,160,/* hier kann man auch Infos in eine Formel schreiben */ 200,2000,11111)

Theoretisch kann man Kommentierungen auch direkt in eine Formel eintragen. Das kann hilfreich sein, wenn man einzelne Werte später noch mal überprüfen will, oder man ist sich noch nicht ganz sicher, ob die Werte oder Berechnung an dieser Position stimmen.



Viele Funktionen werden noch hinzukommen.
Zum Beispiel ist auch eine Autovervollständigung geplant und vieler mehr.

Wenn Du Fragen zum Estimator hast, dann spreche uns gerne an.

Hat dies Ihre Frage beantwortet?