見出し画像

【GoogleAppsScript】whileでの繰り返し


while文で条件が成立している間繰り返す


whileはforと同様に処理を反復したいときに使うものです。
条件式が成立している間だけ繰り返すという機能を持っています。

while(条件式) {
    //繰り返したい処理
}


条件式がtrueであるときは、ずっと繰り返します。

サンプルプログラム


function myFunction() {
   const st = SpreadsheetApp.getActiveSheet();
   const last = st.getLastRow();
   
   let cnt = 2;
   while(st.getRange(cnt, 4).getValue()) {
       cnt++;
   }
   
   console.log(st.getRange(cnt,1).getValue());
   st.getRange(cnt,4).setValue(true);

}


カウント用変数cntで用意して、D列になにかしらの値が格納されている間は単純にプラス1をします。

文字列は空文字でなければtrueを返していきます。

cnt行目がD列に何も入力されていない場所まで来たら終了です。

ループを抜けたとき、cnt行は初めてD列が空文字だった行になります。

名言をどんどん読み込み、最後にtrueを書き込めば終わりです。

プログラム実行後

名言-Google-スプレッドシート
画像2

注意点

whileループの中でcnt++を入れていなかったとすると、while文の条件の中でずっと数がカウントアップされずループを抜けられず無限ループに陥ります。

whileを使う場合は、ループが抜けるような設計が必要となります。

もっと、GoogleAppsScriptを学びたい人はこの本がおすすめです。


#GoogleAppsScript #JavaScript #JavaScript入門 #プログラム #プログラム初心者 

この記事が気に入ったらサポートをしてみませんか?