if文とは?GAS初心者が実例で学んだ条件分岐の基本

Google Apps Script(GAS)初心者が「if文」でつまずいたリアルな体験をもとに、基本から応用、よく使う条件分岐の書き方、そして`return`や`continue`と組み合わせたテクニックを紹介します。

このブログは、Google Apps Script(GAS)を使った自作ツールの記録や、開発の過程での気づきをまとめたものです。
丁寧な解説というより、「こんなこともGASでできるんだ」というアイディアのきっかけになれば幸いです。

ifって何?

条件に応じて処理を分けるための文法で、GASにおける意思決定の基礎。

if (条件) {
  // 実行する処理
}
  • 「〇〇だったらこうする」という判断ルールをGASに書いてあげるのがif
  • スプレッドシートで言うなら「このセルが空欄だったら処理しない」みたいなときに使えます

よく使うパターン①:空欄スキップ

if (cell.getValue() === "") {
  return;
}

これは、空欄なら処理を中断する(return)という使い方です。
ループ処理の中で使うと、いらない行をスキップできて超便利です。

else / else ifの違い

elseは「それ以外」の全部

if (条件A) {
  // Aがtrueのとき
} else {
  // Aじゃないとき
}

else ifは「他にも条件があるとき」

if (score >= 80) {
  Logger.log("合格!");
} else if (score >= 60) {
  Logger.log("追試!");
} else {
  Logger.log("不合格…");
}

else ifで追加の条件分岐、elseでそれ以外を処理します。

よく使うパターン②:複数条件(AND / OR)

if (value1 === "OK" && value2 > 100) {
  // 条件をすべて満たすときの処理
}

AND(&&)とOR(||)を使って、複雑な条件を組み合わせることもできます。

  • &&は 両方とも満たすとき(AND)
  • ||は どっちか満たせばOK(OR)
  • 「〇〇で、かつ△△のとき」は&&、「〇〇または△△のとき」は||

実際によく使った場面

  • 空欄スキップ(if (cell === "") return;)
  • ログ出力の条件(テストする時によく使う)
  • 値の分類・グループ分け
  • 重複チェック
  • 処理の早期終了

テクニック:if + return / continue

早期リターン

if (!email) return;

値がない場合は早めに処理を終了できます。

continueでスキップ

for (let i = 0; i < rows.length; i++) {
  if (rows[i][0] === "") continue;
  // それ以外の処理
}

ループ内で条件に合わないときだけ飛ばすテクニックです。

まとめ

教科書にはいろんなif文の書き方が載ってますが、実際に使うのは「空欄スキップ」「分類」「条件一致」くらいがほとんどです。
複雑な条件も、分解して if を小分けにしたほうが結局わかりやすいです。
最初は書きすぎたり、複雑にし過ぎてエラーになったりしましたが、「読みやすさ」を優先したらうまくいくようになりました。

トップページへ戻る