In-line If (IIF) 関数の使用 |
従来の方法では、条件に基づいて実行するよう関数を設定するには、If と Else ステートメントが使用されていました。比較的シンプルな代替的方法は In-line If (IIF) 関数です。IIF 関数は、If と Else ステートメントで使用できる機能の多くを提供しますが、複数行の Visual Basic を使用する必要はありません。IIF 関数は、条件に基づいて実行するよう単一行の式を設定する唯一の方法です。また、個別の If と Else ステートメントを使用できる場合でも、使い勝手が良いので、多くのユーザーが IIF 関数を複数行のスクリプトで使用しています (可能な場合)。
IIF 関数の構文を以下に示します。
IIF(<ConditionalExpression>,<ExpressionIfTrue>,<ExpressionIfFalse>)
|
IIF 関数は、複数のコンピュータ言語で使用できますが、Visual Basic 固有の関数ではありません。 |
IIF 関数には以下の式が含まれています。
条件式
条件式が True の場合に実行する式
条件式が False の場合に実行する式
"ExpressionIfTrue" または "ExpressionIfFalse" は、IIF 関数が実行されるたびに実行されます。追加の (入れ子) IIF 関数も含め、これらの表現は、有効な単一行表現となります。
IIF 関数は最初に条件式 (関数の最初の項) を調べ、それが True か False かを確認します。条件式の例には次のようなものがあります。
Quantity > 100:この条件式の場合、Quantity 変数が 100 より大きければ True です。
(Field("PartType") = "Breakable") AND (Field("Price") > 1000):この条件式は、データベース内の PartType フィールドおよび同じ部品の Price フィールドを探します。この場合、現在のデータベースレコードの PartType フィールドが "Breakable" テキスト文字列で、Price フィールドが 1000 を超えていれば True として評価されます。
関連トピック