LoginSignup
3
3

More than 3 years have passed since last update.

GASでセルの値を取得、変更、削除

Posted at

はじめに

GAS勉強中で、「アウトプットはインプットからはじまっている」と思っている今日この頃。
部下にも色々業務を覚えるときや、MTGなどで話しを聞いている時は必ず上記お話と、理由を説明します。

そんなこんなで、ビジボットというサイトで記事を書きながら勉強しているわけですが。。。
【ビジボット】https://bzbot.work
【記事レシピ】https://bzbot.work/2019/05/22/gas-recipe/

やってみて、色々学ぶことが多く勉強できているなと感じてます。
例えばAnalyticsを入れているから、ユーザ数が見えるし、SearchConsoleを入れているからどういうキーワードでサイトが上位に表示されているか、などが視覚的にわかるからです。

でも、視覚的にわからなかったらここまでのモチベーションを保ちつつ提供できていない為、読んでくれる人、読まなかったにせよ検索してサイトに来て直帰しちゃった方もほんと感謝です。自分もやりたいこと探しているときに、クリックして「あ、違うな」って思ったらすぐ離脱しちゃいますし。。

そうやって極小サイトながらも色々な勉強ができているのはみなさんのおかげです。。。。笑

本題

今回はタイトルにある通り、セルの基本操作について書いていきます。
すでに記事にされているので、細かい内容は省いちゃいます。

セルの値を取得

詳細はこちら ➡️ https://bzbot.work/2019/05/22/gas-getvalue/
セルの値で2列目2行目には「ビジボットイチロウ」というワードが入力されてます。
この値を取得する方法はシンプルに以下です。
※複数のセル範囲を取得する場合は「getValues」を使います(詳細URLでサンプルあり)
image.png

GAS
function myFunction() {
  // 現在開いているスプレッドシートを取得
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

  // 現在開いているシートを取得
  var sheet = spreadsheet.getActiveSheet();

  // 指定したセルの値を取得
  var getVal = sheet.getRange(2,2).getValue();

  // 取得した結果をログに表示
  Logger.log('getRange(2,2):' + getVal);
}
log
[19-05-20 02:06:04:063 JST] getRange(2,2):ビジボットイチロウ

セルの値を変更

詳細はこちら ➡️ https://bzbot.work/2019/05/22/gas-setvalue/
セルの値で2列目2行目には「ビジボットイチロウ」というワードが入力されてます。
この値を「ビジボット」という値に変更する方法はシンプルに以下です。
※複数のセル範囲を値を反映する場合は「setValues」を使います(詳細URLでサンプルあり)
image.png

GAS
function myFunction() {
  // 現在開いているスプレッドシートを取得
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

  // 現在開いているシートを取得
  var sheet = spreadsheet.getActiveSheet();

  // 指定したセルの値を変更する
  sheet.getRange(2,2).setValue('ビジボット');
}

セルの値を削除

詳細はこちら ➡️ https://bzbot.work/2019/05/24/gas-clear/
セルの値で2列目2行目には「ビジボットイチロウ」というワードが入力されてます。
この値を削除する方法はシンプルに以下です。
※複数のセル範囲を取得する場合は「getValues」を使います(詳細URLでサンプルあり)
image.png

GAS
function myFunction() {
  // 現在開いているスプレッドシートを取得
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  // 現在開いているシートを取得
  var sheet = spreadsheet.getActiveSheet();

  // 指定したセルの値を取得
  var getVal = sheet.getRange(2,2).getValue();
  Logger.log('clear前のgetVal:' + getVal);

  // 指定したセルの値を削除
  sheet.getRange(2,2).clear();

  // 指定したセルの値を取得
  var getVal = sheet.getRange(2,2).getValue();
  Logger.log('clear後のgetVal:' + getVal);
}
log
[19-05-23 02:27:30:674 JST] clear前のgetVal:ビジボットイチロウ
[19-05-23 02:27:31:055 JST] clear後のgetVal:

ログって

GASの勉強していてほんとに助かっているログ機能。
「Logger.log();」って記載するだけで簡単にログ画面を表示することができるので重宝してます!

よくコメントを書いておかないと「なんだこのコードは!」って思ったら自分が書いたなんてネタかな?って思ってたワードをよく聞くけど、コメント替わりにログで表示するとより便利。
明日の自分は全くの他人だと思って、こういうところはしっかりとしていきたい。
※GASの稼働上限の時間を加味して入れすぎてもよろしくないので、そこはよしなに...笑
https://bzbot.work/2019/05/29/gas-log/

余談で以下スプレッドシートのシート名を指定する方法です。
ぜひGAS初めての方はみてみてください。
https://bzbot.work/2019/05/24/gas-getsheetbyname/

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3