SWITCH() は以下のような機能となります
🧩 書式イメージ
appsheetコピーする編集するSWITCH(
[列A],
"A", "結果A",
"B", "結果B",
"C", "結果C",
"その他"
)[列A]と"A"が一致すれば"結果A"を返す- 一致するものがなければ最後の
"その他"(デフォルト)を返す
実例1:日付ラベル
SWITCH(
[日付],
TODAY(), "今日",
TODAY()-1, "昨日",
TODAY()+1, "明日",
TEXT([日付])
)TODAY()→”今日”、TODAY()-1→”前日”、TODAY()+1→”翌日”- それ以外の日は日付文字列を返す
実例2:色による数値振り分け
SWITCH(
[Color],
"赤", 3,
"黄", 2,
"緑", 1,
0
)赤→3、黄→2、緑→1、それ以外→0
実例3:アクセス権チェック
SWITCH(
[Access Role],
"Admin", IN(USEREMAIL(), Admins[Email]),
"User", IN(USEREMAIL(), Users[Email]),
FALSE
)ロールに応じてアクセス権を返すことができます
利点まとめ
- ネストせず可読性UP
- 条件が多くなるときに
IF()よりスッキリ - 最後にデフォルトが必要
Tips & Pitfalls
| ポイント | 内容 |
|---|---|
| デフォルト | 必ず最後に書く(省略不可) |
| 同じ型 | すべての結果(value1, value2…)は同じ型である必要 |
| ネスト | SWITCH() 内にも IF() や他 SWITCH() を使える |
| 他関数 | IF() と併用して柔軟な実装も可能 |
✅ まとめ
SWITCH()は条件分岐をきれいに書くために有用IF()のネストより可読性が高く、保守しやすい記述に最適- 最低限の構成と実例を覚えて活用すればOK

