パラノイア

ハードワーク信者 & Apple信者

【GAS】特定列の最終行の次の空セルに値をセットする方法

f:id:kawakensan:20170929004944p:plain

GASを使って自動入力hogehogeみたいなことをしたいと思って、いろいろ試行錯誤しているとこです。

さっそく、"特定列の最終行の次の空セルに値をセットする"について。

ちょっと伝わってないかもなので、詳しく説明すると、

  • 何かしらの値を、継続的にスプレッドシートにセットしたい
  • 値は上の行から順にセットする
  • もちろんデータがすでに存在する時は次の行

雑ですが、こんな感じでしょう。

要件は整ったので、実際のコードをさっそくどうぞ。

ちなみにいろんなサイトを見てみて、これが分かりやすかったので。もっとシンプルな関数などはみなさん見つけられていないようです。

 var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('シート名');
 var last_row = sheet.getLastRow(); // 最後の行を取得

 // A列→(i,1)の最後の行データの次のセルに値をセット
  for(var i = last_row; i >= 1; i--) {
    if(sheet.getRange(i,1).getValue() != '') {
      var range = sheet.getRange(i,4); // 取得する範囲を取得
        var j = i + 1;
        sheet.getRange(j,2).setValue("テスト");
        break;
    }
  }

i +1してるのは、iはデータが入っているセルなので、その次に指定するためです。

この場合、iが行番号、数字が1→A列、2→B列、3→C列なので適宜変更してください。

if文の下にさらに条件を追加すれば、同じ情報が入ってきたら処理を抜けたりも、実装できますよね。

参考になった方はフォローお願いしますね。

ではではー。

読まれている記事

kawaken.hatenablog.jp

kawaken.hatenablog.jp

kawaken.hatenablog.jp

kawaken.hatenablog.jp

kawaken.hatenablog.jp