【GAS】IFで複数条件、または、IFの中にIFや入れ子【サンプルコード】

GAS基本メソッド
この記事は約4分で読めます。

GASのIFで複数条件、elseまたはを使ったサンプルコードや、
IFの中にIF入れ子などの解説とダウンロードして使えるサンプルデータの公開などをしています。

GASのif文複数条件「または」と「かつ」

GASのif文の複数条件で「aまたはb」、「aかつb」のようなandやorを使用する
「or」は「||」(または)
「and」は 「&&」(かつ)

//A===B または A===C
if (A === B || A === C) {

    //処理;

//A===B かつ A===C
} else if (A === B && A === C) {

    //処理;

}
スポンサーリンク

サンプルコード詳細

//A===B またはA===CのIF文処理
if (A === B || A === C)
//処理1;
}

//A===B かつA===C のIF文処理
if (A === B && A === C)
//処理2;
}

GASでifの中にifを使って入れ子にする

GASのifで、ifの中にifというような、入れ子にするには、elseを使用します。

//A===B または A===C
if (A === B || A === C) {

    //処理1;

//条件に当てはまらなかったらA===B かつ A===C
} else if (A === B && A === C) {

    //処理2;

}

elseに続いて、if文を使用することで、入れ子になってifの中にifというGASコードを使うことができます。

elseは最初のif文の条件に当てはまらなかった場合に処理が行われます。

if (条件1)
処理1;
} else if (条件2)
処理2;
}

GASのifで空欄なら〜の処理をする

GASのifで空欄かどうかを調べるには、isBlank()を使用します。

if(range.isBlank()){

  //空欄ならログ出力
  Logger.log('空欄です');

}

サンプルコードのisBlank()は、範囲に対して空欄かどうかの判定をします。

if(範囲.isBlank()){
//空欄だった時の処理
}

ifで空白を調べたい時の注意

isBlank()は、空欄かどうかを判定するメソッドのため、
半角や全角のスペースが入っていると空欄ではないという処理がされます。

スペースが入っていてもスプレッドシートの見た目上にはわからないため、
意図しない処理が行われたりしてしまいます。

空欄と空白、両方判定する方法は詳しくはこちらの記事でサンプルコードを公開しています。
空欄と全角・半角の空白を判定する(ダウンロードあり)

GASのif else で何もしない方法

GASのif、else文で何もしないには、「;」(セミコロン)を使用します。

//A===B または A===C
if (A === B || A === C) {

  //処理1;

//A===B かつ A===C
} else if (A === B && A === C) {

  //処理2;

//条件に当てはまらない時
} else {

  ;

}
スポンサーリンク

サンプルコードは、
条件1、条件2に当てはまらない時は何もしないという処理を行なっています。

if (条件1)
処理1;
} else if (条件2)
処理2;
} else
; // 何もしない
}

GASの演算子一覧

比較演算子意味
'a' == 'b'aとbは等しい(データ型は含まない)
'a' === 'b'aとbは等しい(厳密、データ型も含む)
'a' != 'b'aとbは等しくない(データ型は含まない)
'a' !== 'b'aとbは等しくない(厳密、データ型も含む)
'a' < 'b'bよりaは小さい
'a' > 'b'bよりaは大きい
'a' <= 'b'aはb以下
'a' >= 'b'aはb以上

GASの比較演算子には、「==」と「===」、「!=」と「!==」という書き方があります。

この違いは、文字列を比較する場合にデータ型まで含んで比較するかどうかの違いです。

例えば変数「a」に「1」が入っている場合、
数値型であれば、「==」、「===」どちらの比較演算子を使ってもtrueになりますが、
データ型だった場合は「===」ではfalseとなります。

そのため、意図しない動きを回避するために、
より厳密な「===」や「!==」を使用するのがおすすめです。

よくわからなくても、「===」や「!==」を使っていればOKです。

GASのif文複数条件サンプルデータダウンロード

サンプルデータのダウンロードはこちら
【Copori】スプレッドシートのセルの値を条件分岐サンプル

使い方はこちらで解説しています。
GASのif文複数条件を実際に動かす方法

今回の記事はGASのif文複数条件でまたは、入れ子などの解説をしましたが、
入れ子を複数使っていく場合、switch文を使った方がわかりやすく、ミスも少なくなります。
switch文についての詳しい記事はこちら
switchのcaseで複数処理 DLサンプルコードあり

 

このサイトでは、サンプルコードやサンプルデータを配布して、
スプレッドシートからGASコードを見て使えるようになる記事を作成しています。

記事毎にサンプルデータを置いていますので、
実際に動かしながら参考にしていただければ幸いです。

 

ありがとうございました!

スポンサーリンク

コメント

タイトルとURLをコピーしました