複数の論理条件ごとに結果を返す場合、この関数を使用します。つまり、IF関数を複数条件に対応させた関数です。この関数は最初に定義された論理条件の値を返します。
IFSは、複数のネストされたIFステートメントの代替として使用できます。
構文
IFS (論理1, 値1, [論理2, 値2]...)
最大127個の論理条件を定義できます。
注記: 必要な区切り記号(カンマまたはセミコロン)は、コンピュータの地域設定に自動的に対応します。
引数のデータタイプ
論理:True/False
値:任意のデータタイプ(ただし、全ての値に同じデータタイプと単位を使用する必要があります)
結果のデータタイプ
値と同じデータタイプ
例1
各ゾーンの分類に応じたガラス面積の必須比率を指定します。
数式
IFS (Archicad分類 - 24 = "居住スペース","25%", Archicad分類 - 24 = "会社スペース", "30%”,
Archicad分類 - 24 = "収納スペース", "10%")
結果
各ゾーンの分類に応じて必要なガラス面積の比率を返します。値と結果のデータタイプは全て同じです(この場合は文字列)。
全ての条件がFalseである場合
一致する条件が存在しない場合、関数は「未定義」を返します。
ただし、論理条件が満たされなかった場合に使用するデフォルトの結果値を指定することもできます。最後の論理条件にTRUEを入力して、その後にデフォルト値を入力します。
このデフォルトの結果値のデータタイプは、関数のその他の結果値と同じです。
IFS (論理1, 値1, [論理2, 値2],...[TRUE,デフォルト値])
例2
梁を「長」(6 mより長い場合)または「短」(2 mより短い場合)として分類します。これらのカテゴリに該当しない梁を「中」として分類します。
数式
IFS (左長さ > 600 cm, "長", 左長さ < 200 cm, "短", TRUE, "中" )
結果
6 mより長い梁:長
2 mより短い梁:短
これらの中間の長さの梁:中