Sie befinden sich hier: Home / Extras / Rechnen mit Formeln / Nutzung für Adressen und Immobilien

Rechnen mit Formeln

Nutzung für Adressen und Immobilien

Rechnen (Mathe)

Eine Rechenformel beginnt immer mit einem Gleichheitszeichen “=”, wie viele das aus Excel kennen. Wenn Sie den Wert aus einem Feld für die Berechnung nutzen möchten, müssen Sie den Feldnamen in eckigen Klammern angeben.
Bitte beachten Sie, dass wenn Sie im Formel-Editor mit Dezimalzahlen arbeiten, das Komma “,” als Punkt “.” geschrieben werden muss.
Hier ein Beispiel: =[kaltmiete]+[nebenkosten]+[ind_1078_Feld_ObjPreise33]+3.57

Der Feldname ist nicht der, den Sie in der Software sehen, sondern der Eintrag in der Spalte Feld. Dabei ist der längliche Name “ind…” der Name eines selbst erstellten Feldes. Sie können Formeln also für Systemfelder und für selbst erstellte Felder angeben.

Es gibt die Grundrechenarten (+ – * /) und es gilt Punkt vor Strich. Als Sonderfall gibt es_calculate.
Sie können alle Zahlenfelder und auch Checkbox-Felder für die Berechnung nutzen. Das sind Felder des Typs Decimal, Float, Ganzzahl, Int, TINYINT und Boolean.

_calculate

Bei dem Formelelement _calculate handelt es sich um ein Makro. Mit dem Makro _calculate können Werte anhand von Feldwerten berechnen werden. Dazu wird als Parameter eine Formel der Formellogik benutzt.
Formelaufbau: _calculate(text(DATEADD(today();10;"d");"DD.MM.YYYY"))
Beispiele: _calculate([kaufpreis]*3) oder _calculate(IF([kaufpreis]<1000000;[kaufpreis]*3;[kaufpreis]*4))

Die Formeln sind ein praktische Sache, die Sie auch in Makros, speziell den “if Makros” verwenden können. Dazu müssen Sie die Formel oder den Feldwert ebenfalls mit dem Makro_calculate() einbinden.

Beispiel:
_if(_calculate[kaufpreis]<1000000;”_kaufpreis”;”Preis auf Anfrage”)

Das _calculate-Makro gibt die Werte in englischer Formatierung aus, mit Punkt als Dezimaltrenner. Um die Werte in deutscher Formatierung mit Komma als Dezimaltrenner auszugeben, nutzen Sie den Parameter FIXED. Mit Hilfe von FIXED kann auch die Anzahl der Nachkommastellen bestimmt werden.

Beispiele:

_calculate([kaufpreis]) -> 233333.00
_calculate(FIXED([kaufpreis])) -> 233.333,00
_calculate(FIXED([kaufpreis];0)) -> 233.333

Funktionen

Durch Formelfunktionen haben Sie zum Beispiel die Möglichkeit, aus mehreren Zahlenfeldern einen Mittelwert zu errechnen oder aber Textfelder einzukürzen. Es gibt im Moment vier verschiedene Bereiche, welche über Funktionen bearbeitet werden können. Dies sind:

  1. Text-Funktionen
  2. Zahlen-Funktionen
  3. Datums-Funktionen
  4. Logik-Funktionen

Zum Erstellen einer Formelfunktion müssen Sie unter Extras >> Einstellungen >> Administration >> Eingabefelder das entsprechende Modul und die Kategorie wählen und dort ein neues individuelles Feld anlegen, in welchem Sie eine Formelfunktion hinterlegen können.

1. Text-Funktionen

Durch Textfunktionen haben Sie die Möglichkeit, Textfelder einzukürzen oder aber nach bestimmten Wörtern, Zeichenfolgen oder Ähnlichem zu suchen. Insgesamt gibt es 7 Textfunktionen und einen neuen Textoperator “&“, durch welchen Textfelder verbunden werden können. Im Folgenden finden Sie die jeweiligen Formeln mit Beispielen. Alle Beispiele beziehen sich auf das Feld “Immobilientitel” mit dem Inhalt “flach begrüntes Grundstück”.

  • LENGTH :
    Durch die Formel LENGTH können Sie sich die Länge des Inhalts eines Textfeldes ausgeben lassen. Das Ergebnis wird als Ganzzahl ausgegeben.
    Formelaufbau: LENGTH([Feldname])
    Beispiel: LENGTH([objekttitel]) Es wird die Länge des Immobilientitels ausgegeben.
    Ergebnis: 26
  • LEFT :
    Durch die Formel LEFT können Sie sich von links eine bestimmte Anzahl an Zeichen ausgeben lassen. Dies erfolgt in Textform.
    Formelaufbau: LEFT([Feldname];Anzahl Zeichen)
    Beispiel: LEFT([objekttitel];5) Es werden die ersten 5 Zeichen des Immobilientitels ausgeben.
    Ergebnis: flach
  • RIGHT :
    Die Formel RIGHT ist das Gegenteil der Formel LEFT. Die Funktionsweise ist dieselbe.
    Formelaufbau: RIGHT([Feldname];Anzahl Zeichen)
    Beispiel: RIGHT([objekttitel];10) Es werden 10 Zeichen von rechts ausgeben.
    Ergebnis: Grundstück
  • MID :
    Über die Formel MID haben Sie die Möglichkeit, Text aus der Mitte auszugeben.
    Formelaufbau: MID([Feldname];Erstes Zeichen;Anzahl Zeichen)
    Beispiel: MID([objekttitel];7;9) Ab dem 7ten Zeichen werden die nächsten 9 Zeichen ausgeben.
    Ergebnis: begrüntes
  • SEARCH :
    Über SEARCH können Sie in einem Textfeld nach Begriffen, Zeichenfolgen und Leerzeichen suchen.
    Formelaufbau: SEARCH("Suchbegriff";[Feldname];Optional: Erstes Zeichen)
    Beispiel: SEARCH(" ";[objekttitel]) Es wird nach dem ersten Leerzeichen im Immobilientitel gesucht.
    Ergebnis: 6
    Beispiel: SEARCH(" ";[objekttitel];7) Ab dem 7ten Zeichen wird nach dem nächsten Leerzeichen gesucht.
    Ergebnis: 16
  • SEARCH_MULTISELECT :
    Über SEARCH_MULTISELECT können Sie ein Multiselectfeld nach Werten durchsuchen.
    Formelaufbau: SEARCH_MULTISELECT("Suchbegriff";[Feldname des Multiselectfeldes])
    Beispiel: SEARCH_MULTISELECT("lasten";[fahrstuhl])
    Es wird nach dem Multiselectwert “lasten”, also Lastenfahrstuhl, im Multiselectfeld “fahrstuhl” gesucht.
    Ergebnis:  0, wenn “Suchbegriff” nicht gefunden wurde (also = Wert ist nicht enthalten). Auf der graphischen Oberfläche wird je nach Datentyp des Feldes die 0 nicht angezeigt, sondern das Feld bleibt leer.
    Ergebnis: 0, wenn für [Feldname des Multiselectfeldes] kein Multiselectfeld angegeben wurde. Auf der graphischen Oberfläche wird je nach Datentyp des Feldes die 0 nicht angezeigt, sondern das Feld bleibt leer.
    Ergebnis: 1, wenn “Suchbegriff” gefunden wurde (also “Wert ist enthalten”).
  • TRIM :
    Durch TRIM können Sie Leerzeichen vor und nach dem Text “wegtrimmen”. Da in onOffice enterprise alle Textfelder von vornherein getrimmt werden, besteht das Beispiel aus einer zusammengesetzten Formelfunktion.
    Formelaufbau: TRIM([Feldname])
    Beispiel: TRIM(MID([objekttitel];6;11)) Zuerst wird aus dem Immobilientitel über die Funktion MID ” begrüntes ” ausgeschnitten und über TRIM die Vor- und Nach-Leerzeichen entfernt.
    Ergebnis: “begrüntes”
  • TEXT :
    Durch die Funktion TEXT können Sie z.B. ein Datumsfeld als Text ausgeben. Im Beispiel wird das Datumsfeld [erstellt_am] verwendet. Dieses Feld wird mit der Erstellung der Immobilie angelegt und ist nicht veränderbar. Bsp. 19.02.2017
    Formelaufbau: TEXT([Feldname];”Text”)
    Beispiel: TEXT([erstellt_am];"DD/MM/YY") Durch diese Formel gibt man das Datumsfeld in einer anderen Schreibweise aus, angelehnt an das Makro _Datum.
    Ergebnis: 19/02/17
  • Operator “&” :
    Durch den Operator “&” können z.B. mehrere Textfelder oder Zahlenfelder miteinander verbunden werden.
    Formelaufbau: [Feldname]&[Feldname] oder [Feldname]&"Text"
    Beispiel: [objekttitel]&" "&[objekttitel] gibt 2mal nacheinander den Immobilientitel aus, welche durch ein Leerzeichen getrennt sind.
    Ergebnis: flach begrüntes Grundstück flach begrüntes Grundstück

2. Zahlen Funktionen

Durch Zahlenfunktionen ist es Ihnen möglich aus mehreren Zahlenfeldern einen Mittelwert zu berechnen oder aber Zahlenwerte zu runden. Es sind 5 Zahlenfunktionen vorhanden. Im Anschluss finden Sie die jeweilige Formel mit Beispielen. Alle Beispiele beziehen sich auf das Feld “Kaufpreis” mit dem Wert 162.990,35. Für die Berechnung des Mittelwerts wird noch das Feld “Verkehrswert” mit dem Wert 170.000,00 hinzugezogen.

  • ROUNDUP :
    Durch die Formel ROUNDUP kann ein Wert aufgerundet werden.
    Formelaufbau: ROUNDUP([Feldname];Anzahl Nachkommastellen, welche gerundet werden)
    Beispiel: ROUNDUP([kaufpreis];1) Es wird der Kaufpreis auf eine Nachkommastelle aufgerundet.
    Ergebnis: 162.990,40
  • ROUNDDOWN :
    Durch die Formel ROUNDDOWN können Zahlenfelder abgerundet werden.
    Formelaufbau: ROUNDDOWN([Feldname];Anzahl Nachkommastellen, welche gerundet werden)
    Beispiel: ROUNDDOWN([kaufpreis];1) Der Kaufpreis wird auf die erste Nachkommastelle abgerundet.
    Ergebnis: 162.990,30
  • ROUND :
    Über die Formel ROUND wird kaufmännisch gerundet.
    Formelaufbau: ROUND([Feldname];Anzahl der zu rundenden Nachkommastellen)
    Beispiel: ROUND([kaufpreis];1) Es wird auf eine Nachkommastelle gerundet.
    Ergebnis: 162.990,40
  • FIXED :
    Über die Formel FIXED haben Sie die Möglichkeit, Zahlen um Nachkommastellen einzukürzen oder aber mehr Nachkommastellen auszugeben. Bitte beachten Sie, dass die FIXED-Formel nur in einem Textfeld angewendet werden kann und es dadurch nicht möglich ist, mit dem Ergebnis weiter zu rechnen. Durch FIXED wird außerdem der Wert in deutscher Formatierung mit Komma als Dezimaltrenner ausgegeben.
    Formelaufbau: FIXED([Feldname];Anzahl der Nachkommastellen welche ausgegeben werden sollen)
    Beispiel: FIXED([kaufpreis];4) Es werden insgesamt 4 Nachkommastellen ausgegeben.
    Ergebnis: 162.990,3500
    Beispiel: FIXED([kaufpreis];0) Vom Kaufpreis werden keine Nachkommastellen ausgegeben.
    Ergebnis: 162.990
  • AVERAGE :
    Über AVERAGE können Sie aus zwei oder mehr Zahlenfeldern einen Mittelwert bilden.
    Formelaufbau: AVERAGE([Feldname];[Feldname2])
    Beispiel: AVERAGE([kaufpreis];[verkehrswert]) Es wird der Mittelwert der beiden Zahlenfelder Kaufpreis und Verkehrswert ermittelt.
    Ergebnis: 166.495,18
    Ergebnis Rechner: 166.495,175
  • SUM :
    Über die Formel SUM können Sie die Summe mehrere Einzelfelder berechnen.
    Formelaufbau: SUM([Feldname1];[Feldname2];[Feldname3])
    Beispiel: SUM([kaufpreis];[verkehrswert])
    Ergebnis: 332.990,35
  • MIN :
    Über die Formel MIN kann aus einem Pool an Werten der minimalste Wert ermittelt werden.
    Formelaufbau: MIN([Feldname1];[Fendname2];[Feldname3]) es wird der niedrigste Wert aus den 3 Feldern ausgegeben.
    Beispiel: MIN([kaufpreis];[verkehrswert]) Es wird der Mindestwert von Kaufpreis und Verkehrswert der Immobilie berechnet.
    Ergebnis: 162.990,35.
  • MAX :
    Durch den Gebrauch der Formel MAX kann aus einem Pool von Werten der maximale Wert ermittelt werden.
    Formelaufbau: MAX([Feldname1];[Feldname2];[Feldname3]) es wird der höchste Wert aus den 3 Feldern ausgegeben.
    Beispiel: MAX([kaufpreis];[verkehrswert])
    Ergebnis: 170.000,00
  • POWER:
    Durch die POWER-Funktion können Potenzen errechnet werden.
    Formelaufbau: POWER([Feldname1];[Feldname2]) o. POWER(Zahl1;Zahl2) Der erste Parameter gibt die Basis, der zweite Parameter gibt den Exponenten an.
    Beispiel: POWER(5;2)
    Ergebnis: 25
  • LOG:
    Durch die LOG-Funktion können Logarithmen errechnet werden.
    Formelaufbau: LOG([Feldname1];[Feldname2]) oder LOG(Zahl;Basis). Der erste Paramter gibt den Logarithmand an, der zweite Parameter die Basis. Der zweite Paramater Basis ist optional.LOG(Zahl) ohne Angabe einer Basis berechnet den natürlichen Logarithmus.
    Beispiel: LOG(64;2)
    Ergebnis: 6

3. Datums Funktionen

Ein weiteres Anwendungsgebiet der Formelfunktionen sind Datumsfelder. Hier können Sie sich die Zeit zwischen 2 Daten ausgeben lassen oder man rechnet auf ein Datum eine definierte Anzahl an Tagen, Monaten oder Jahren dazu. Insgesamt können 5 verschiedene Formeln verwendet werden. Für alle Beispiele wird das Feld “erstellt am” mit dem Wert 09.02.2017 genutzt. Für die Beispiele, in welchen die Zeit zwischen 2 Daten berechnet wird, wird das Feld “Auftrag bis” mit dem Wert 01.03.2019 hinzugezogen. Der heutige Tag ist der 01.03.2017.

Bitte beachten Sie, das die Datumsfunktionen immer im Format YYYY-MM-DD ausgegeben werden und nur in diesem Format rechnen können. Eine andere Darstellung ist über die Funktion TEXT möglich. Beispiel: _calculate(text(DATEADD(today();10;”d”);”DD.MM.YYYY”))

  • TODAY :
    Durch die Formel TODAY kann das heutige Datum ausgegeben werden.
    Formelaufbau: TODAY()
    Beispiel: TODAY() Das heutige Datum wird ausgegeben.
    Ergebnis: 2021-06-24
  • NOW:
    Durch die Formel NOW kann das heutige Datum mit Uhrzeit ausgegeben werden.
    Formelaufbau: NOW()
    Beispiel: NOW() Das heutige Datum mit Uhrzeit wird ausgegeben.
    Ergebnis: 2021-06-24 12:07:40
  • WEEKDAY :
    Durch die Formel WEEKDAY kann der Wochentag eines Datumsfeldes ausgegeben werde.
    Formelaufbau: WEEKDAY([Feldname])
    Beispiel: WEEKDAY([erstellt_am]) Der Wochentag des Feldes “erstellt am” wird im Feld angezeigt.
    Ergebnis: Donnerstag
  • MONTH :
    Die Formel MONTH gibt den Monat des zu berechnenden Feldes aus.
    Formelaufbau: MONTH([Feldname])
    Beispiel: MONTH([erstellt_am]) Der Monat des Feldes “erstellt am” wird im Feld angezeigt.
    Ergebnis: Februar
  • DATEADD :
    Über die Formel DATEADD können Sie über einen Parameter (d,m oder y) zu einem Datumsfeld eine Anzahl an Tagen, Monaten oder Jahren dazu addieren.
    Formelaufbau: DATEADD([Feldname];Anzahl;"Parameter")
    Beispiel: DATEADD([erstellt_am];13;"d") Es werden 13 Tage zum Datum “erstellt am” hinzugerechnet.
    Ergebnis: 22.02.2017
    Beispiel: DATEADD([erstellt_am];2;"m") Das Datum “erstellt am” plus 2 Monate.
    Ergebnis: 09.04.2017
    Beispiel: DATEADD([erstellt_am];1;"y") Ein Jahr wird dazugerechnet.
    Ergebnis: 09.02.2018
  • DATEDIF :
    Über DATEDIF können Sie die Zeit zwischen zwei Datumsfeldern in Tagen(d), Monaten(m) oder Jahren(y) ausgegeben.
    Formelaufbau: DATEDIF([Feldname];[Feldname2];"Parameter")
    Beispiel: DATEDIF([erstellt_am];[auftragbis];"d") Es wird die Zeit zwischen “erstellt am” und “Auftrag bis” in Tagen angezeigt.
    Ergebnis: 750
    Beispiel: DATEDIF([erstellt_am];[auftragbis];"m") Die Monate zwischen den beiden Daten wird ausgegeben.
    Ergebnis: 24
    Beispiel: DATEDIF([erstellt_am];[auftragbis];"y") Es sollen die Jahre zwischen den beiden Daten angezeigt werden.
    Ergebnis: 2
  • TEXT :
    Durch die Funktion TEXT können Sie z.B. ein Datumsfeld als Text ausgeben. Im Beispiel wird das Datumsfeld [erstellt_am] verwendet. Dieses Feld wird mit der Erstellung der Immobilie angelegt und ist nicht veränderbar. Bsp. 19.02.2017
    Formelaufbau: TEXT([Feldname];”Text”)
    Beispiel: TEXT([erstellt_am];"DD/MM/YY") Durch diese Formel gibt man das Datumsfeld in einer anderen Schreibweise aus, angelehnt an das Makro _Datum.
    Ergebnis: 19/02/17

4. Logik Funktionen

IF Logik

Es ist auch möglich IF Abfragen einzubauen. Dabei können alle Felder (auch Textfelder oder Schlüsselfelder) als Bedingung genutzt werden. Die Syntax ist an die Excel-Funktion “Wenn()” angelehnt: IF(Bedingung wahr;Dann;Sonst). Dabei wird der Wert des Feldes, bei dem die Formel eingetragen wird, mit dem Inhalt der Dann bzw. Sonst Bedingung gefüllt.
Hier ein Beispiel: IF([Feldname1]>0;[Feldname2]+[Feldname3];[Feldname4]+[Feldname8]).

Um Schlüsselfelder (Singleselect- oder Multiselect-Felder) zu prüfen, muss die Auswahl des Schlüsselfeldes in der Bedingung überprüft werden.
Ein Beispiel Singleselectfelder: IF([Schlüsselfeld]="Feld";Dann;Sonst).
Ein Beispiel Multiselectfelder: IF(SEARCH_MULTISELECT("Suchbegriff";[Feldname des Multiselectfeldes])=1;Dann;Sonst).

AND/OR Logik

Sie können auch Bedingungen wie AND/OR verwenden. Dadurch können Sie z.B. über die AND-Bedingung festlegen, dass erst, wenn die AND-Bedingungen aufgelöst sind, ein Ergebnis in das Feld der Formel eingetragen wird. Bei der OR-Bedingung reicht es aus, wenn einer der abgefragten Parameter stimmt.

  • AND :
    Formelaufbau: AND([Feldname];[Feldname])
    Zusammengesetzter Formelaufbau: IF(AND([Feldname]="Feldparameter1";[Feldname2]="Feldparameter2");"Ausgabe1";"Ausgabe2")
    In diesem Fall werden Formeln von innen nach außen aufgelöst. Das heißt, erst wenn Feldparameter1 und Feldparameter2 stimmen, kommt es zu einer Ausgabe von “Ausgabe1”. Stimmen die Parameter nicht mit der Vorgabe überein, kommt es zu “Ausgabe2”.
    Beispiel:
    IF(AND([vermarktungsart]="kauf";[objektart]="grundstueck");"Grundstück zu verkaufen";"")
    Ergebnis: Fall 1: Vermarktungsart und Immobilienart stimmen mit den Vorgaben überein. Feld wird mit “Grundstück zu verkaufen” befüllt.
    Ergebnis: Fall 2: Keine oder nur eine Übereinstimmung. In diesem Fall wird Ausgabe2 ausgegeben, also ein leeres Feld.
  • OR :
    Formelaufbau: OR([Feldname1];[Feldname2])
    Zusammengesetzter Formelaufbau: IF(OR([Feldname1]="Feldparameter1";[Feldname2]="Feldparameter2");"Ausgabe1";"Ausgabe2")
    Auch in diesem Fall wird die Formel von innen nach außen aufgelöst. So kommt es, wenn Feldparameter1 oder Feldparameter2 stimmen, zu einer Ausgabe von “Ausgabe1”. Stimmen weder der erste Parameter noch der zweite Parameter, kommt es zu “Ausgabe2”.
    Beispiel: IF(OR([newsletter_aktiv]="0";[newsletter_aktiv]="2");"Keinen Newsletter senden";"")
    Ergebnis Fall 1: Ist das Singleselect-Feld Newsletter mit Nein (0) oder mit Absage(2) gefüllt wird der Text ‘Kein Newsletter senden’ angezeigt.
    Ergebnis Fall 2: Wird ein anderer Wert eingestellt wird nichts in dem Feld angezeigt.

NOT Logik

Über die NOT-Logik können Sie z.B. einen oder mehrere Feldinhalte ausschließen und somit das Ergebnis beeinflussen. Das heißt, dass die Feldinhalte zu einem Ergebnis führen, welche nicht im NOT erwähnt sind.

  • NOT :
    Formelaufbau: NOT([Feldname1]="Feldparameter");"Ausgabe"
    Zusammengesetzter Formelaufbau: IF(NOT([Feldname1]="Feldparameter1");"Ausgabe1")

Beispiele aus der täglichen Arbeit

Sie wollen aus einem Feld, welches mit zwei oder drei Worten besteht, einzelne Worte extrahieren. Ein Beispiel wäre Anrede, Vor- und Nachname. Bitte beachten Sie, dass die unten aufgeführten Formeln nur bei drei Wörtern im Feld funktionieren.

Erstes Wort:
=LEFT([Feld mit Wörtern];SEARCH(" ";[Feld mit Wörtern];1))
Zur Erläuterung: über die Formel wird von links das erste Leerzeichen gesucht. Alles was links vom Leerzeichen steht, wird dann in das Formelfeld aufgeben.

Zweites Wort:
=MID([Feld mit Wörtern];SEARCH(" "; [Feld mit Wörtern]; 1) + 1;SEARCH(" "; [Feld mit Wörtern]; SEARCH(" "; [Feld mit Wörtern];1) + 1)-SEARCH(" "; [Feld mit Wörtern];1))

Drittes Wort:
=RIGHT([Feld mit Wörtern];LENGTH([Feld mit Wörtern])-SEARCH(" ";[Feld mit Wörtern];SEARCH(" ";[Feld mit Wörtern];1)+1))