google apps script 入門

Google apps scriptでfor loop|繰返し処理を3ステップで

投稿日:

Google apps scriptでfor loopを使って繰返し処理をする方法をご紹介します。

こんな方におすすめ

  • GASでfor loopの使い方を理解したい人
  • GASで繰り返し処理をしたい人
  • GASでfor loopしながらifで条件分岐したい人

[toc]

Google apps scriptでfor loopを使って繰返し処理を行う3ステップ

冒頭GIFで使用したスクリプトはコチラ↓

アヒルン
おお!こんな短いコードでも繰り返し処理できるんだね!もしかしてカンタン・・??
理解すればそれほど難しい処理ではない
うちゅうじん

 

for文の基本的な書き方

for(初期化式継続条件式増減式
{
条件式がtrueの時に実行する繰り返し処理

初期化式

ループの前に行う処理の式。変数宣言して初期値を決める(例:var i=1)

継続条件式

ループを終えるための条件式。trueの間はループ、falseの場合はループ終了。

増減式

ループ処理の最後に毎々実行。カウンタ変数の値を(演算子で)増減させる式が一般的。

 

カウンタ変数

繰り返し処理を制御する変数のこと。

演算子

増減の演算子は(++ --) で表す。

 

Google apps scriptとはいえ、基本的にはjavascriptのfor文の書き方を同じです。

 

ではGoogle apps script・for文loop処理を3STEPで。

 

繰り返し処理するシート範囲を変数宣言で格納

スプレッドシートAppを呼び出して、繰返し処理したい対象のシートを変数へ格納します。

var変数の内訳

  • sheet・・スプレッドシートappを呼び出し
  • sht・・シート1を呼び出し
アヒルン
ここで繰返し処理をしたい範囲を決めるってこと?
そ。
うちゅうじん

 

POINT!

ループ処理の範囲をセル位置で指定する場合は、

var rng = sht.getRange("A2:A11").getValues();

とすることで範囲指定できます。

 

最終行を取得

繰返し処理を最終行まで行いたいので、getLastRowメソッドでシート1の最終行を取得します。

getLastRow()

コンテンツを持つ最後の行の位置を返します。

引用:getLastRowメソッド

var変数の内訳

  • lastRow・・シート1の最終行

 

ここで取得した値は、先にご紹介したfor文の「継続条件式」に使用します。

アヒルン
ここでループ処理する回数を決めるんだね。
YES。注意点があるので述べとく
うちゅうじん

注意

Google apps scriptでは列指定した最終行の取得は、現状不可。そのためシート全体の最終行を取得しています。(間違ってたらすみません)

 

for文で繰り返し処理

最後にfor文で繰り返し処理を行っていきます。

 

先のfor文の書き方に当てはめて、

for(初期化式継続条件式増減式
{
条件式がtrue時に実行する繰り返し処理

  • 初期化式が2( i=2)
  • 継続条件式が最終行まで(lastRow)
  • 増減式はプラス(++)
  • 繰返し処理の内容は「3列目i行まで◎を記入」

 

ここまでのコードを全て繋げると以下になるはず↓

 

実際に処理を行ってみると・・

アヒルン
で・・きたw!

 

for文を使ってloop処理出来ました(^^)

 

アヒルン
でも参照する値が空白だった時に、◎を空白にするのってどうやればいいの?
それはifで条件分岐を使う。次ページで説明しよう
うちゅうじん

関連記事Google apps script でfilterをかける方法

次のページへ >



  • この記事を書いた人
  • 最新記事
oyakun

oyakun

30代半ば♂妻・子3人の5人で日々激戦中。Google app script&VBA初心者が自分の備忘録を兼ねて「スプレッドシート、Excel、WordPress、plugin」の設定等、主にブログやアフィリエイト周辺のtipsを背伸びしながらご紹介しています。

-google apps script 入門
-, , , ,

Copyright© OYAKUDACHI.XYZ , 2018 All Rights Reserved.