【Google Apps Script(GAS)】for文を使った繰り返し処理(条件分岐、最終行取得との組み合わせ)

Google Apps Scriptにおける、for文による繰り返し処理と、条件分岐や最終行取得を組み合わせた例についてご紹介します。

※本ページはプロモーションが含まれています

スポンサーリンク
スポンサーリンク

for文を使った繰り返し処理

下記のサンプル1ですが、まず変数last_rowに、アクティブシートの文字列が入力されているセルの最終列の数値を代入します。

次にfor文の()の中ですが、以下のようになっています。

var i = 0は、変数iの初期値に0を指定する、という初期化式
i < last_row – 1は、変数iが、変数last_rowに代入された数値をー1した数値(今回は9)より小さい間は処理を繰り返す、という条件式
i++は、繰り返す度に変数iを+1していく、という増減式

まとめると、変数iの初期値は0で、処理を繰り返す度に変数iを+1していき、変数iが変数last_row-1より小さい間は処理を繰り返す、という事になります。

続いてfor文の{}の中の処理内容ですが、これは以下のようになっています。

変数scoreに、アクティブシートの2 + i行目のA列に記載されている数値を代入

次にif文のifの()の中ですが、変数scoreに代入した数値が100と等しい場合、同じ行のB列に◎を記載
else if の()の中とelseは上から順に、

変数scoreに代入した数値が80以上かつ99以下の場合、同じ行のB列に〇を記載
変数scoreに代入した数値が50以上かつ79以下の場合、同じ行のB列に△を記載
それ以外の数値(49以下の数値)の場合、同じ行のB列に×を記載

となります。

・サンプル1

function myFunction() {

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sh = ss.getActiveSheet();
var last_row = sh.getLastRow();

for (var i = 0; i < last_row – 1; i++) {

var score = sh.getRange(2 + i, 1).getValue();

if (score == 100){

sh.getRange(2 + i, 2).setValue(‘◎’);

} else if (score >= 80 && score <= 99) {

sh.getRange(2 + i, 2).setValue(‘○’);

} else if (score >= 50 && score <= 79) {

sh.getRange(2 + i, 2).setValue(‘△’);

} else {

sh.getRange(2 + i, 2).setValue(‘×’);

}
}
}

処理結果

処理結果

for文を使った繰り返し処理については下記記事もご参照ください。

【Google Apps Script(GAS)】for文を使った繰り返し処理
Google Apps Scriptにおいて、指定した回数だけ繰り返し処理を実行したい場合、for文が頻繁に使われます。 for文は、以下のように書きます。 for (初期化式; 条件式; 増減式) {  処理内容 ...
【Google Apps Script(GAS)】for文を使った繰り返し処理(最終行取得との組み合わせ)
Google Apps Scriptにおける、for文による繰り返し処理と最終行取得を組み合わせた例についてご紹介します。 for文を使った繰り返し処理 下記の例ですが、まず変数last_rowに、アクティブシートの文字列が入力...

getValueについては下記記事をご参照ください。

【Google Apps Script(GAS)】スプレッドシートのセルに入力されている値を取得する(getValue、getValues)
今回はGoogle Apps Scriptにおける、スプレッドシートの単一セルに入力されている値の取得方法(getValue)と、セル範囲に入力されている値の取得方法(getValues)についてご紹介します。 単一セルに入力され...

比較演算子については下記記事をご参照ください。

【Google Apps Script(GAS)】比較演算子と論理演算子
今回は、Google Apps Scriptにおける比較演算子と論理演算子についてご紹介します。 【Google Apps Script】比較演算子とは? 比較演算子とは、「大きい」や「以上」など、値と値を比較する時に使うもので...
タイトルとURLをコピーしました