Google Apps Script でセルを操作する基本的手順
この記事は自分用の覚書です。
■GAS (Google Apps Script) のオブジェクトモデル
Spreadsheet.App オブジェクト(『Googleスプレッドシート』というアプリケーション本体)
↓
→ Spreadsheet オブジェクト (個々のファイル)
↓
→ Sheet オブジェクト(ファイルの中のシート)
↓
→ Range オブジェクト(シート上のセル)
■GAS でセルの取得(変更)するための基本的な手順
1.Googleスプレッドシートのファイルを取得(変数への代入)
2.1. で取得したファイルのなかのシートを取得
3.2. で取得したシート上にあるセルを取得
4.3. で取得したセルの内容(値)を取得(変更)
■セルを操作する基本(サンプル)
GAS では、変数の宣言と同時に、変数への値の代入が認められている。
function sample01() {
//1. Googleスプレッドシートのファイルを取得(変数への代入)
var target_file = SpreadsheetApp.getActiveSpreadsheet();
//2. 1.で取得したファイルのなかのシートを取得
var target_sheet = target_file.getActiveSheet();
//3. 2.で取得したシート上にあるセルを取得
var target_range = target_sheet.getRange("A1");
//4. 3.で取得したセルの内容(値)を取得(変更)
var cell_atai = target_range.getValue(); //値を入力するには setValue(値)
Logger.log(cell_atai);
}
上記スクリプトは次の書き方をしても意味は同じ。
function sample02() {
var target_file;
var target_sheet;
var target_range;
var cell_atai;
//1. Googleスプレッドシートのファイルを取得
target_file = SpreadsheetApp.getActiveSpreadsheet();
//2. 1.で取得したファイルのなかのシートを取得
target_sheet = target_file.getActiveSheet();
//3. 2.で取得したシート上にあるセルを取得
target_range = target_sheet.getRange("A1");
//4. 3.で取得したセルの内容(値)を取得(変更)
cell_atai = target_range.getValue();
Logger.log(cell_atai);
}
・getSheetByName("シート名")
SpreadsheetクラスのgetSheetByName()メソッドを使うと、シート名を使ってシートを取得できる。
・getSheets()[0]
Spreadsheet.getSheets()メソッドでは、すべてのシートが配列として返される。
配列の1つ目の要素(添え字・インデックスの「0」)が、一番左のシートを表す。
配列は 0 から始まる。
・openById("ID")
SpreadsheetApp.openById()メソッドでは、シートのIDを指定してシートを取得する。
ID は、URL の https://docs.google.com/spreadsheets/d/xxxxxxxxxxxxxxxx/edit 中で xxxxxxxxxxxxxxxx の部分。
| 固定リンク
コメント