【初心者向けのGAS】スプレッドシート内のシートを指定する方法

よこのじ(@yokonoji_work)です。

Google Apps Script(GAS)で、操作するシートを取得する方法をご紹介します。

シートの選択

今回はスプレッドシート内のシートを指定する方法ですので、スプレッドシートの指定方法を知りたい方は「【初心者向けのGAS】スプレッドシート(現在・外部)の指定方法」を参照ください。

表示中のアクティブシートを取得する方法

表示中のアクティブシートを取得するには、getActiveSheet()メソッドを使用します。

var sheet = spreadsheet.getActiveSheet();

アクティブシートとは、スプレッドシートを開いて表示しているシートです。

シート1を選択中であればシート1が、シート2を選択中であればシート2が取得されますので、意図しないシートを選択してしまう点に注意が必要です。

シート名を指定してシートを取得する方法

シート名を指定してシートを取得するには、getSheetByName()メソッドを使用します。

var sheet = spreadsheet.getSheetByName("シート1");

“シート1″のようにシート名を指定しますので、シート名を変更していればその名前を指定してください。

配列でシートの順番を指定してシートを取得する(or 全シート取得)

配列でシートの順番を指定してシートを取得するには、getSheets()メソッドを使用します。

var sheet = spreadsheet.getSheets()[1];

getSheets()メソッドは、スプレッドシート内のすべてのシートを取得します。取得したシートは配列として格納されていますので、一番左にあるシートは[0]、一つ右のシートは[1]で取得することができます。

for文などですべてのシートに何らかの操作を行う場合は使い勝手が良いかと思います。

シート取得の使い方

次のように、spreadsheetという変数に取得したスプレッドシートを代入して、spreadsheetに対してgetSheetByName()などのメソッドを適用する使い方が一般的です。

// スプレッドシートを取得する
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
// シートを取得する
var sheet = spreadsheet.getSheetByName("シート1");

「シートを取得する」部分の記述は、紹介した中で適したものに置き換えてください。

 

シートを取得できれば「【初心者向けのGAS】スプレッドシートに行を追加(挿入)する方法」のように行の追加(挿入)などを行えます。

GAS本の定番!Amazonで なか見!検索 できる