google apps script でシートデータの判定
#09 結果の判定をしてみよう
http://dotinstall.com/lessons/basic_google_apps_script/24309
を参考に
getLastRow()を使い
シート中のすべてのデータに対して
分岐処理をすることで
点数に対する判定をつける
これで、合格、不合格とか
ランク処理などもできるようになる
値をみながら判定結果をだすので
1~20行までを for ループでまわす
function getResults(){
で新しい関数を作成
まずは、ActiveSheet を選択
var sheet = SpreadSheetApp.getActiveSheet();
これに対してループをまわせばOK
最終行まで、というループの場合は
getLastRow() をつかう
行数が把握できているなら
for(i=1; i<=20; i++)
でもいいけど、
変化したり、膨大な数になる、もしくは
最大値がいくつになるかわからないから拡張性をもたせたいというのなら
for(i=1; i<=sheet.getLastRow(); i++)
というようにしたほうがよい
感覚としては
.length とかに近いかんじ
今回は点数で合格、不合格の判定をするので
if で分岐する
if(sheet.getRange(i,2).getValue() >= 70)
これで、70点以上なら合格というようにする
getRange(i,2) は B列という意味
getvalue() はその値ということなので
>= 70 なら 70以上ということになる
また、メソッドは . でつなげることができる
sheet.getRange(i,3).setValue(“OK”).setBackground(“green”);
とすることで
70点以上だったときの処理をしている
getRange(i,3) で3列目 つまりC列
setValue(“OK”) でOKという文字をセット
setBackground(“green”)
で背景色を緑にしている
そして 70 以下だった場合の処理として
sheet.getRange(i,3).setvalue(“NG”).setBackground(“red”);
とすれば
NGと表示され背景色は赤になる
テストの結果だけでなく
実験結果
会計や投資対象の分析などにも使える