Microsoft Office Online
Für Mein Office Online (Was ist das?) registrieren | Anmelden

 
 
Microsoft Office InfoPath
Suchen
Suchen
 
 
 
 
Warnung: Sie haben diese Webseite mit einem nicht unterstützten Browser geöffnet. Diese Webseite wird am besten angezeigt, wenn Sie Microsoft Internet Explorer 6.0 oder höher, Firefox 1.5 oder Netscape Navigator 6.0 oder höher verwenden. Hier finden Sie weitere Informationen über unterstützte Browser.

DruckversionDruckversion Lesezeichen und FreigabeFreigabe
Informationen zu Formeln und Funktionen
 

Formeln setzen sich aus Funktionen, Verweisen auf andere Felder oder Gruppen, statische Werte (wie z. B. Zahlen) und mathematische Operatoren zusammen. Mit Formeln können Sie mathematische Werte berechnen, Daten und Uhrzeiten anzeigen, auf Felder in Formularen verweisen oder Zeichenoperationen, wie z. B. die Kombination mehrerer Felder zu einem Feld, durchführen. Ein Formel gibt immer ein einzelnes Ergebnis zurück.

Formeln werden in Feldern (Feld: Ein Element oder Attribut in der Datenquelle, das Daten enthalten kann. Wenn das Feld ein Element ist, kann es Attributfelder enthalten. In Feldern werden die Daten gespeichert, die in Steuerelemente eingegeben werden.) gespeichert und in den Steuerelementen angezeigt, die an diese Felder gebunden (Binden: Verbinden eines Steuerelements mit einem Feld oder einer Gruppe in der Datenquelle, sodass in das Steuerelement eingegebene Daten gespeichert werden. Wenn die Bindung eines Steuerelements aufgehoben wird, ist das Steuerelement nicht mit einem Feld oder einer Gruppe verbunden, und in das Steuerelement eingegebene Daten werden somit nicht gespeichert.) sind. Sie können eine Formel mithilfe der Eigenschaften eines Steuerelements (bei Textfeldern, Rich-Text-Feldern und der Datumsauswahl) oder der Eigenschaften eines Feldes erstellen.

Funktionen, wie z. B. sum und avg, sind wesentliche Bestandteile von Formeln und können immer eingesetzt werden, wenn Sie eine Formel einfügen können. Die meisten Formeln benötigen Argumente (Argument: Ein Wert, der Informationen zu einer Aktion, einem Ereignis, einer Methode, einer Eigenschaft, einer Funktion oder einer Prozedur bereitstellt.) für ihre Operationen, wobei einige Funktionen mehr als ein Argument erfordern. Alle Funktionen geben einen Wert zurück. So ist beispielsweise in einer Funktion, die die Werte in einer Spalte addiert, das Argument das wiederholte Feld, an das die Steuerelemente in der Spalte gebunden sind. Die Funktion addiert die Werte und gibt die Werte all dieser Felder zurück. Abhängig von der Funktion kann es sich bei einem Argument um einen statischen Wert oder ein Feld bzw. einen statischen Wert oder Feld handeln, der bzw. das zur Laufzeit basierend auf einem anderen Wert dynamisch ausgewählt wird.

Es folgt ein Beispiel für eine Formel, die den Mittelwert der Werte in einem wiederholten Feld und anschließend die Summe der Werte in einem anderen wiederholten Feld berechnet und dann die Summe und den Mittelwert addiert:

avg(Feld3) + sum(Feld4)

Dieses Beispiel enthält zwei Funktionen, avg und sum, die jeweils ein Argument benötigen (Feld3 bzw. Feld4). Die Formel gibt die Ergebnisse der addierten Funktionen zurück.

Bei der Bearbeitung von Formeln sollten Sie Folgendes beachten:

  • Bei der Anzeige einer Formel in einem Textfeld, einem Rich-Text-Feld oder in der Datumsauswahl sollten Sie den Schreibschutz für Steuerelemente einrichten, damit Benutzer das Ergebnis der Formel nicht überschreiben können.
  • Legen Sie in den Eigenschaften des Steuerelements oder Feldes fest, ob die Ergebnisse einer Formel aktualisiert werden sollen, wenn sich die Werte in der Formel ändern, oder weiterhin das ursprüngliche Ergebnis der Formel angezeigt werden soll.
  • Werden Argumente in Funktionen verwendet, werden alle Werte in einem wiederholten Feld überprüft. Beim Addieren z. B. einer Spalte in einer wiederholten Tabelle, wird das Feld addiert, an das die Spalte gebunden ist: sum(Feld1).
  • Funktionen können in andere Funktionen geschachtelt werden, wobei das Ergebnis einer Funktion das Argument für eine andere Funktion bereitstellt.
  • Da mathematische Funktionen in der Regel von Ganzzahlen oder Dezimalwerten als Argumente abhängen, sollten Sie sicherstellen, dass das Kontrollkästchen Leere Werte als Null behandeln auf der Registerkarte Allgemein im Dialogfeld Formularoptionen aktiviert ist.
  • Formeln in Microsoft Office InfoPath 2003 beruhen auf XPath-Ausdrücken. Wenn Sie mit XPath vertraut sind, können Sie die XPath-Ausdrücke direkt bearbeiten.
  • Formeln verweisen auf Felder und Gruppen im Formular, aus dem Kontext heraus, in dem sich die Felder und Gruppen befinden. Ein Feld, das auf sich selbst verweist, verwendet einen Punkt (.) anstelle des eigenen Namens. Eine Formel, die z. B. die Funktion Name für die Rückgabe des eigenen Feldnamens verwendet, sieht wie folgt aus: name(.)

In den folgenden Tabellen werden die in InfoPath verfügbaren Funktionen aufgeführt.

Datums- und Uhrzeitfunktionen

FunktionBeschreibungBeispiel
nowGibt das aktuelle Datum und die Uhrzeit zurück. Es ist kein Argument erforderlich.now()
todayGibt das aktuelle Datum zurück. Es ist kein Argument erforderlich.today()

Feldfunktionen

FunktionBeschreibungBeispiel
nameGibt den Namen des angegebenen Feldes oder der Gruppe sowie des Namespacepräfix zurück. Wenn das Argument eine Reihe von Feldern oder Gruppen ist, wird der Name und das Präfix des ersten Feldes oder der ersten Gruppe zurückgegeben.name(Feld1)
positionGibt den Index (oder die Position) des Feldes oder der Gruppe hinsichtlich anderer Felder und Gruppen innerhalb derselben Gruppe zurück.position()
countZählt die Anzahl der Instanzen des angegebenen Feldes oder der Gruppe. count (Feld1)
idGibt die der angegebenen ID zugeordneten Felder oder Gruppen zurück. Diese Funktion steht im Dialogfeld Funktion einfügen nicht zur Verfügung, sondern muss in das Feld Formel im Dialogfeld Formel einfügen eingegeben werden. id(Feld1)
last Gibt den Wert des letzten Vorkommens des Feldes im aktuellen Kontext zurück.Feld1[last()]
local-nameGibt den Namen des angegebenen Feldes oder der Gruppe zurück. Wenn das Argument eine Reihe von Feldern oder Gruppen ist, wird der Name des ersten Feldes oder der ersten Gruppe zurückgegeben.local-name(Feld1)
namespace-uriGibt den vollständigen Namespace des angegebenen Feldes oder der Gruppe zurück. Wenn das Argument eine Reihe von Feldern oder Gruppen ist, wird der Namespace des ersten Feldes oder der ersten Gruppe zurückgegeben.namespace-uri(Feld1)

Mathematische Funktionen

FunktionBeschreibungBeispiel
avgBerechnet den durchschnittlichen Wert aller numerischen Werte im Argument. avg(Feld1)
BooleanGibt den Wert "True" zurück, wenn das Argument nicht Null, eine positive oder negative Zahl oder eine nicht leere Zeichenfolge ist. Andernfalls wird "False" zurückgegeben. Gibt den Wert "False" zurück, wenn das Argument Null, ein NaN-Wert oder eine leere Zeichenfolge ist.boolean(Feld1)
ceilingGibt die kleinste Ganzzahl zurück, die nicht kleiner als das Argument ist (Aufrundung). ceiling(Feld1)
evalGibt die Werte einer Reihe von Feldern zurück. Das erste Argument definiert die Reihe von Feldern und das zweite Argument definiert den für die Reihe von Feldern zu berechnenden Ausdruck. In der Regel ist die eval-Funktion in einer Funktion geschachtelt, die sich auf eine Reihe von Feldern auswirkt, wie z. B. sum oder avg.sum(eval(group2, "Feld1 * Feld2"))
falseGibt den Wert "False" zurück. false()
floorGibt die größte Ganzzahl zurück, die nicht größer als das Argument ist (Abrundung).floor(Feld1)
minGibt die kleinste Zahl im Argument zurück.min(Feld1)
notWenn das Argument den Wert "False" aufweist oder Null ist, wird "True" zurückgegeben. Wenn das Argument den Wert "True" aufweist oder nicht Null ist, wird "False" zurückgegeben.not(Feld1)
numberKonvertiert das Argument in eine Zahl. number(Feld1)
nzGibt den Wert des angegebenen Feldes zurück. Wenn das Feld leer ist, wird Null (0) zurückgegeben.nz(Feld1)
roundRundet das Argument zur nächsten Ganzzahl. round(Feld1)
sumBerechnet die Summe der Argumente.sum(Feld1)
trueGibt den Wert "True" zurück. true()
maxGibt die größte Zahl im Argument zurück.max(Feld1)

Textfunktionen

FunktionBeschreibungBeispiel
containsWenn das erste Argument das zweite Argument enthält, wird "True" zurückgegeben. Andernfalls wird "False" zurückgegeben. contains(Feld1, "Stadt")
concatKombiniert den Wert von Feldern mit anderen Feldern oder Textzeichenfolgen.concat(Feld1," of ",Feld2)
normalize-spaceEntfernt die Leerzeichen aus dem Argument. normalize-space(Feld1)
starts-withWenn das erste Argument mit dem zweiten Argument beginnt, wird "True" zurückgegeben. Andernfalls wird "False" zurückgegeben. starts-with(Feld1, "B")
stringKonvertiert das Argument in eine Textzeichenfolge. string(Feld1)
string-lengthGibt die Anzahl der Zeichen im Argument zurück. string-length(Feld1)
substringGibt einen bestimmten Teil einer Textzeichenfolge zurück. Das erste Argument definiert die Textzeichenfolge, das zweite Argument definiert die Startposition und das dritte Argument definiert die Anzahl der einzuschließenden Zeichen.substring(Feld1, 3,5)
substring-afterGibt einen bestimmten Teil einer Textzeichenfolge zurück. Das erste Argument definiert die Textzeichenfolge, und das zweite Argument definiert das gesuchte Objekt in der Textzeichenfolge. Die Funktion gibt den Text zurück, der auf das erste Vorkommen des zweiten Arguments folgt.substring(Feld1, "Land")
substring-beforeGibt einen bestimmten Teil einer Textzeichenfolge zurück. Das erste Argument definiert die Textzeichenfolge, und das zweite Argument definiert das gesuchte Objekt in der Textzeichenfolge. Die Funktion gibt den Text zurück, der dem ersten Vorkommen des zweiten Arguments vorangeht.substring-before(Feld1, "Ende")
translateGibt eine konvertierte Textzeichenfolge zurück. Das erste Argument definiert die Textzeichenfolge, das zweite Argument definiert die in der Textzeichenfolge zu ändernden Zeichen, und das dritte Argument definiert, wozu die Zeichen geändert werden sollen. Die Zeichen im zweiten Argument werden in die Zeichen an der entsprechenden Stelle im dritten Argument konvertiert.translate(Feld1, "()","[]")

 Hinweis   Die Informationen in diesem Kapitel treffen möglicherweise nicht zu, wenn Sie mit einem Formular arbeiten, das mithilfe von Microsoft InfoPath 2003 ohne installiertes Service Pack entworfen wurde.

Anzeige