earthpg:GAS専門のプログラミングスクール

GASのif文の使い方と複数条件の実装テクニック

GASを使い始めたんですが、if文複数条件を使いたいんですが、うまくいかなくて…
猫男
猫男
catman
catman
それなら、catmanの出番だな。GASでのif文の使い方と複数条件について詳しく教えよう。これを覚えれば、条件分岐が自由自在さ。

GASで基本的なif文の書き方

GASで条件分岐を扱う際の基本となるのがif文だ。まずは基本の形を知っておこう。

if (条件) {
 // 条件が真のときに実行される処理
}

✅ 条件を判定して処理を分けることができる。ただし、条件が「真」でない場合は何もしないぞ。

GASでif文にて複数条件を扱うテクニック

次はお待ちかねの複数条件のifだ。

1つの条件では足りない:

もしひとつの条件だけで足りないときは、複数条件を使える。

if (条件1 && 条件2) {
 // 両方の条件が真のときに実行される処理
}

ガイドラインとして:

  • &&(AND)を使って全ての条件が真なら実行。
  • ||(OR)を使ってどれかひとつでも真なら実行。
なるほど!条件を組み合わせるにはANDとかORを使うんですね。では、条件が通らない場合には何もしない場合は?
猫男
猫男
catman
catman
特に何もしないなら、あえてelseを使わず、if文だけで書くとすっきりするぞ。

GAでよく出てくるif文の具体例

それじゃあ、実践的なif文の具体例紹介するぞ。

空白やnullをチェックする:

データが空白か、nullか判定したいとき。

if (value === null || value === '') {
 Logger.log("値が空かnullだ。");
}

特定の文字列が含まれているか:

文字列をチェックしたいときに使える。

if (text.includes("チェック")) {
 Logger.log("チェックが含まれている。");
}

条件の否定:

もし条件を満たさない場合を判定したいとき。

if (!条件) {
 Logger.log("条件を満たしていない。");
}
状況に応じて色んな条件が設定できるんですね。でも、時々スクリプトが止まっちゃうようなことがあるんです…
猫男
猫男
catman
catman
それは多分break文が関係している。ループの中で使うもので、条件によってループを抜けることができるんだが、使う場所には気をつけよう。

練習問題:GASでif文の基本的な活用を身につけよう

次のGASスクリプトを参考に、特定の条件に応じた処理が実行されるように修正してみよう。

問題

以下のコードでは、変数statusが”succeeded”の場合にログを出力するようにしたい。

function checkStatus() {
 let status = "succeeded";
 // ここに条件を追加
 Logger.log("処理が成功しました。");
}

 

 

練習問題の解答と解説

解答

function checkStatus() {
 let status = "succeeded";
 if (status === "succeeded") {
   Logger.log("処理が成功しました。");
 }
}

解説

  • letは変数を宣言するためのキーワード。
  • if (status === “succeeded”)の部分で、変数statusが想定した文字列と一致するかの条件分岐を行っています。この条件が真であれば、次の行のLogger.log()が実行されます。
ちゃんと動いた!いろんな条件を設定する方法が掴めた気がします!
猫男
猫男
catman
catman
良かったな。これでGASでの条件分岐もバッチリだ。またいつでも聞いてくれ。