GASでスプレッドシートのシート名を取得する方法(getSheetName)

Google Apps Script(GAS)ではスプレッドシートの各種操作が可能です。

その中で、スプレッドシートから取得したシートのシート名を取得する方法を解説します。

GASでスプレッドシートのシート名を取得

Google Apps Script(GAS)はスプレッドシートに紐付いた形で利用することが多いスクリプトサービスです。

GASによるスプレッドシートの処理の中で、シート名を取得したい場合があります。

通常はgetSheetByNameメソッドを使い、シート名を指定する形でシートを取得しますが、getSheetsメソッドで一括で取得した場合です。

その他にアクティブなシートを取得するgetActiveSheetメソッドを実行した際に、どのシートが取得されたか確認するのにシート名を取得したりします。

GASではスプレッドシートの各シート名を取得できるようになっています。

シート名を取得するgetSheetNameメソッド

Google Apps Script(GAS)でスプレッドシートのシート名を取得するには、getSheetNameメソッドを用います。

sheet.getSheetName()

getSheetNameメソッドはsheetオブジェクトに対して、引数なしで実行可能で、シート名の文字列が返却されます。

getSheetName()の戻り値を変数に保持したり、console.logに記載することでシート名をログ出力可能です。

GASでシート名を取得するサンプルコード

スプレッドシートのシート名をGoogle Apps Script(GAS)で取得するサンプルコードを解説します。

下記のスプレッドシートに紐づくコンテナバインドスクリプトを用意します。

Google Apps Script(GAS)でシート名を取得するために用意したスプレッドシート

「リスト」シートを開いた状態で、アクティブなシートを取得し、getSheetNameメソッドを実行し、ログ出力します。

function getActiveSheetName() {
  //スクリプトに紐づくスプレッドシートのアクティブなシートを取得
  let mySheet = SpreadsheetApp.getActiveSheet();
  //取得したアクティブなシートのシート名を取得
  let sheetName = mySheet.getSheetName();
  //シート名をログ出力
  console.log("シート名は " + sheetName + "です。");
}
Google Aps Script(GAS)でスプレッドシートのアクティブなシートのシート名をgetSheetNameメソッドで取得するサンプルコードと実行結果

実行した結果、想定どおりアクティブなシートのシート名が取得できていることが実行ログから確認できます。

スプレッドシートの名前を取得するのは別メソッド

なお、今回紹介したgetSheetNameはシート名を取得するメソッドです。

そのため、Google Apps Script(GAS)でスプレッドシートファイルの名前を取得することはできません。

スプレッドシートの名前を取得したい場合はgetNameメソッドがありますので、そちらを利用しましょう。

まとめ・終わりに

今回、Google Apps Script(GAS)でスプレッドシートの個別シート名を取得する方法を紹介しました。

シート名を取得したいsheetオブジェクトに対し、getSheetName()メソッドを実行すると、シート名を文字列で取得できます。

スプレッドシートが保持しているすべてのシートを取得するgetSheetsメソッドを使った場合や、アクティブなシートを取得するactiveSheetメソッドで想定しているシート名か確認するのに便利です。

GASでスプレッドシートのシート名を取得する際にはgetSheetNameを活用しましょう。