よこのじ(@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で なか見!検索 できる
[itemlink post_id=”2666″]