Google Apps Script (GAS)

Google Apps Script (GAS) を使って、JavaScriptからスプレッドシートを操作する方法を入門向けに紹介します。

GoogleスプレッドシートからGASを編集する

GoogleスプレッドシートからGoogle Apps Script (GAS)を編集するには、「ツール」メニューの「スクリプトエディタ」をクリックしてスクリプトエディタを起動する。

「無題のプロジェクト」のコード.js が編集できるようになり、最初は次のコードになっている。

function myFunction() {

}

log()

Google Apps Script (GAS) からログを出力するには、Loggerオブジェクトのlogメソッドを使う。

Logger.log('message');

書式を指定してログを出力することもできる。

Logger.log('message %s', 1);

GmailApp.sendEmail()

Gmail でメールを送信するには、GmailApp.sendEmail() を使用する。

const mailto = "example@gmail.com";
const subject = "Hello";
const body = "Hello, everyone.";
GmailApp.sendEmail(mailto, subject, body);

SpreadsheetApp.getActiveSheet()

Google Apps Script (GAS) からシートのオブジェクトを取得するには、次の方法がある。

現在アクティブなシートを取得するには、SpreadsheetAppオブジェクトのgetActiveSheetメソッドを使う。

var sheet = SpreadsheetApp.getActiveSheet();

SpreadsheetApp.getActiveSpreadsheet()

Google Apps Script (GAS) からGoogleスプレッドシートを操作するには、まず操作対象となるスプレッドシートのオブジェクトを取得する必要がある。

現在アクティブなスプレッドシートのスプレッドシート・オブジェクトを取得するには、SpreadsheetAppオブジェクトのgetActiveSpreadsheetメソッドを使う。

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

getSheetByName()

Google Apps Script (GAS) からシートのオブジェクトを取得するには、次の方法がある。

シート名を指定してシートを取得するには、スプレッドシートオブジェクトのgetSheetByNameメソッドを使う。

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheetByName('シート1');

getRange()

Google Apps Script (GAS) でセルを取得するには、次の方法がある。

「A1」や「B2」のようなアドレスを指定してセルを取得するには、シートオブジェクトのgetRangeメソッドを使う。

var sheet = SpreadsheetApp.getActiveSheet();
var cell = sheet.getRange('A1');

行番号と列番号を指定してセルを取得するには、シートオブジェクトのgetRangeメソッドを使う。数値で指定できるので、ループ処理に便利である。

sheet.getRange(line, column);
line
1から始まる行番号
column
1から始まる列番号
var sheet = SpreadsheetApp.getActiveSheet();
var cell = sheet.getRange(1, 2);

setValue()

Googleスプレッドシートのセルに値を入力するには、RangeオブジェクトのsetValueメソッドを使う。

var sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange('A1').setValue(1);