Verwendung der „In-line If (IIF)“-Funktion |
„If“ und „Else“-Anweisungen stellen den traditionellen Weg dar, Bedingungen auszuwerten. Eine recht einfache Alternative ist die Funktion In-line If-Funktion (Abkürzung: IIF). Die „IIF“-Funktion stellt die Funktionalität einer „If“ und „Else“-Anweisung zur Verfügung, sie benötigt jedoch nur eine Zeile in Visual Basic. Tatsächlich ist dies die einzige Möglichkeit, Bedingungen in einem einzeiligen Ausdruck auszuwerten. Außerdem ist sie so leicht einzusetzen, dass viele Benutzer die IIF-Funktion auch dann verwenden, wenn separate „If“ und „Else“-Anweisungen möglich wären.
Die IIF-Funktion besitzt folgende Syntax:
IIF(<ConditionalExpression>,<ExpressionIfTrue>,<ExpressionIfFalse>)
|
Obwohl die IIF-Funktion in verschiedenen Programmiersprachen zur Verfügung steht, ist sie in Visual Basic normalerweise nicht enthalten. |
Die IIF-Funktion enthält drei Ausdrücke:
Einen Bedingungsausdruck
Einen Ausdruck, der ausgeführt werden soll, wenn die Bedingung eintritt (True)
Einen Ausdruck, der ausgeführt werden soll, wenn die Bedingung nicht eintritt (False)
Bei jedem Aufruf der „IIF“-Funktion wird nur eine der beiden Anweisungen („ExpressionIfTrue“ oder „ExpressionIfFalse“) ausgeführt. Die Ausdrücke können aus gültigen einzeiligen Ausdrücken bestehen. Dazu gehören auch zusätzliche („geschachtelte“) IIF-Funktionen.
Die „IIF“-Funktion überprüft zunächst den Bedingungsausdruck (den ersten Ausdruck der Funktion) dahingehend, ob dieser den Wert „True“ oder „False“ annimmt. Beispiele für Bedingungsausdrücke:
Menge > 100. Dieser Bedingungsausdruck ist „True“ wenn die Variable „Menge“ einen Wert größer als 100 hat.
(Field("Artikeltyp") = "Zerbrechlich") AND (Field("Preis") > 1000). Dieser Bedingungsausdruck untersucht das Feld „Artikeltyp“ in einer Datenbank und wertet den jeweiligen Preis aus. In diesem Fall nimmt der Ausdruck den Wert „True“ an, wenn das Feld „Artikeltyp“ für den aktuellen Datensatz den Text „Zerbrechlich“ enthält und der „Preis“ des Artikels höher als 1000 ist.
Verwandte Themen