Googleスプレッドシート│GASでスプレッドシートのA1セルの値を取得する方法

Google Apps Script(GAS)で、スプレッドシートのA1セルに入力された文字列を取得する方法の備忘録です。

よく使うコードですが、GASを毎回開いて探すのは地味に手間なので、自分用メモも兼ねてブログに記録しておきます。

目次

GASでスプレッドシートのA1セルの値を取得する方法

GASで基本的なコードを書きます。

ステップ①:スプレッドシートに値を入力

まず、スプレッドシートの「シート1」のA1セルに、任意の文字列を入力します。

例:こんにちは

ステップ②:スプレッドシートIDを取得

スプレッドシートのURLは以下のようになっています

https://docs.google.com/spreadsheets/d/【スプレッドシートID】/edit#gid=0

この 【スプレッドシートID】 の部分をコピーしておきます。

例:

1A2B3C4D5E6F7G8H9I0J...

ステップ③:GASでA1セルの値を取得

Google Apps Script に以下のコードを貼り付けて実行します

function myFunction() {
  var sheetId = "スプレッドシートのID"; // ← さきほどコピーしたIDに置き換え
  var sheetName = "シート1"; // 対象のシート名
  var sheet = SpreadsheetApp.openById(sheetId).getSheetByName(sheetName);
  var folderId = sheet.getRange('A1').getValue(); // A1セルの値を取得
  Logger.log(folderId); // ログに表示
}

実行方法

  1. 再生(▶)ボタンをクリックしてスクリプトを実行
  2. メニューから「表示」→「ログ」を選択、または Ctrl + Enter を押す
  3. ログに こんにちは が出力されます

ログ出力の例:

応用:シート名を使わずに、順番で指定する方法

シート名がわからない or 動的に処理したいときは、getSheets()[n] を使ってインデックスで取得もできます:

function myFunction2() {
  var sheetId = "スプレッドシートのID";
  var sheet = SpreadsheetApp.openById(sheetId).getSheets()[1]; // 2番目のシート
  var folderId = sheet.getRange('A1').getValue(); // A1セル取得
  Logger.log(folderId);
}

シートの順番は 左から順に 0, 1, 2… です。

シートが複数ある場合の例:

まとめ

方法メリット
getSheetByName()シート名で指定。明示的で安全
getSheets()[n]インデックス指定。順番で処理したいときに便利

このスクリプトは、設定ファイルとして使うスプレッドシートから値を取得する処理や、ユーザー入力の読み取り処理などでよく使います。

何度も調べ直すより、この記事から辿った方が断然速いので参考にしてくださいませ。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

WAZAの有料記事のサブスクリプションも開始しました。

目次