Sheet基本
IFS関数 完全ガイド
IFS関数 完全ガイド
IFのネスト地獄から解放される多分岐の書き方
「3段以上のIF」はIFSで書き直す。ネストなし・可読性高・メンテナンス容易。条件分岐の新標準。
GASとの関係:if-else if-else チェーンと直接対応する
IFSの構造は GAS の if(...){} else if(...){} else{} チェーンそのものです。スプレッドシートで条件分岐の設計ができると、GASのコード設計にもそのまま活かせます。
目次
IFSとは
IFS関数は、複数の条件を順番に評価して最初に一致した条件の値を返します。IFのネストと完全に等価ですが、ネストしない分だけ読みやすく、修正しやすいのが最大のメリットです。
基本構文
=IFS(条件1, 値1, 条件2, 値2, ..., TRUE, デフォルト値)
最後の TRUE, デフォルト値 は「どの条件にも当てはまらない場合」に対応します。忘れると条件外の行で #N/A になるので必ず入れましょう。
IFネストとIFSの比較
// IFネスト(読みにくい)
=IF(C2>=80,"S",IF(C2>=70,"A",IF(C2>=60,"B",IF(C2>=50,"C","D"))))
// IFS(同じ意味・はるかに読みやすい)
=IFS(
C2>=80, "S",
C2>=70, "A",
C2>=60, "B",
C2>=50, "C",
TRUE, "D"
)
実務でよく使うパターン
パターン1:評価ランク付け
=IFS(
C2>=90, "優秀",
C2>=70, "良好",
C2>=50, "普通",
TRUE, "要改善"
)
パターン2:地域コードから地域名へ変換
=IFS(
A2="TK", "東京",
A2="OS", "大阪",
A2="NG", "名古屋",
A2="FK", "福岡",
TRUE, "その他"
)
パターン3:日程のステータス判定
=IFS(
B2
IFSとSWITCH関数の使い分け
| 関数 | 向いているケース |
|---|---|
| IFS | 条件が「>=80」「 |
| SWITCH | 条件が完全一致("TK"="東京"など)のとき |
// SWITCH:完全一致マッピングならこちらが簡潔
=SWITCH(A2, "TK","東京", "OS","大阪", "NG","名古屋", "その他")
この知識をGASで活かす
IFSで設計した条件分岐ロジックは、GASのif-else if-elseにそのまま変換できます。まずスプレッドシートで条件を整理し、GASに移植する手順が開発を効率化します。
Free Newsletter
AIを業務に活かしたいなら
SMR-Labメルマガ
毎週火曜10時、コピペで使えるChatGPTプロンプト・
GASテンプレートをお届け。登録は1分・完全無料。
