シートを操作する

【GAS】スプレッドシートのファイル名を取得する

GASでスプレッドシートのファイル名を取得するには「getParent()」を利用する。

getParent()

このシートを含むSpreadsheetを返します。

https://developers.google.com/apps-script/reference/spreadsheet/sheet?hl=en#getparent

スプレッドシートのファイル名を取得するGAS実行の様子

getParent()メソッドを利用して、スプレッドシートのファイル名を取得するGASを実行してみました。

getParent()-yes
getParent()を実行した様子

getParent()では、シートやドキュメントのファイル名を取得できる

しかし、スプレッドシートの場合はgetNameメソッドを利用した方が、少ない記述でファイル名を取得できる。

getParent()でファイル名を取得する流れ

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sht = ss.getSheets()[0];
var shtname = sht.getParent();
var filename = shtname.getName();

getName()でファイル名を取得する流れ

var ss = SpreadsheetApp.getActiveSpreadsheet();
var filename = ss.getName();

わずか2行。

getName()メソッドでスプレッドシートのアクティブシートの名前を取得する場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートのアクティブシートの名前を取得する

スプレッドシートのファイル名を取得するGAS

function getparent(){
  //SpreadsheetAppを起動
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  //0番目のシートを取得
  var sht = ss.getSheets()[0];
  //YES/NOを設定
 var result = Browser.msgBox("このシートのファイル名を取得しますか?",Browser.Buttons.YES_NO);

 //ーーーーー条件分岐ーーーーー
  //YESだったら
   if(result == "yes"){
     //■getParentでこのシートのファイル名を取得
     var shtname = sht.getParent();
     //getNameでfile名をfilenmaeへ格納
     var filename = shtname.getName();
      Browser.msgBox("このシートのスプレッドシートファイル名は「"+filename+"」です");
    } else {
      Browser.msgBox("このスプレッドシートのファイル名は取得しませんでした。")
    }
 //ーーーーーここまでーーーーー
}

getParent()の戻り値

Spreadsheet—親スプレッドシート。

スプレッドシートのファイル名を取得するまとめ

GAS×スプレッドシートのファイル名を取得するならgetParent()メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートのUIに関数メニューを追加する

関連記事:【GAS】スプレッドシートに名前とインデックスを指定した新規シートを挿入する

関連記事:【GAS】スプレッドシートで指定した名前で新規シートを作成する

関連記事:【GAS】スプレッドシートのグリッド線を非表示にする

関連記事:【GAS】スプレッドシートのシート名を変更する

関連記事:【GAS】スプレッドシートをコピーして新規シートを作成する

関連記事:【GAS】スプレッドシートのアクティブシートを削除する

関連記事:【GAS】スプレッドシートで現在アクティブなシートを返す

関連記事:【GAS】スプレッドシートで名前・行・列数を指定して新規シートする

関連記事:【GAS】スプレッドシートのアクティブシートの名前を取得する

関連記事:【GAS】スプレッドシートでアクティブなシートを返す

関連記事:【GAS】スプレッドシートでアクティブなシートを取得する

-シートを操作する