Google apps scriptでスプレッドシートのIDを取得する

Google apps scriptでスプレッドシートのIDを取得するには

  • getId()

を使う。

・getId()
このスプレッドシートの一意の識別子を取得します。スプレッドシートIDは、そのURLから抽出できます。

たとえば、URL https://docs.google.com/spreadsheets/d/abc1234567/edit#gid=0のスプレッドシートIDは「abc1234567」です。

戻る
String – スプレッドシートの一意のID(またはキー)

参照:spreadsheet#getId()

Google apps scriptでスプレッドシートのIDを取得するスクリプト

スプレッドシートのIDを取得してgetidに格納。

メッセージボックスで取得したidを表示するか確認。OKだったらA2セルへ表示してCANCELだったら表示しない。

/*スプレッドシートのIDを取得*/
function IDGET() {
  
//スプレッドシートAppを取得
  var ss = SpreadsheetApp.getActiveSpreadsheet();
//アクティブなシートを取得
  var sht = ss.getActiveSheet();
 
//スプレッドシートのidを取得する
  var getid = ss.getId();
//B2セルを取得する
  var rng1 = sht.getRange("B2");
//メッセージボックスにOK_CANCELを表示
  var msg = Browser.msgBox("SpreadsheetのIDを表示","スプレッドシートのIDを表示しますか?",Browser.Buttons.OK_CANCEL);
  
//NOだったらメッセージボックスに「取得しませんでした」と表示する
  if( msg=='cancel'){
        Browser.msgBox("取得しませんでした");
              sht.getRange("A2:B2").clear();//A2:B2をクリア
  }else{
//YESだったらメッセージボックスに「getid」を表示する
              Browser.msgBox("スプレッドシートのIDは"+getid+"です");
         rng1.setValue(getid);//A2にシートのidを表示する
        sht.autoResizeColumn(2);//A2に表示した値に合わせて列幅をリサイズ
    }
}

 

Google apps scriptでスプレッドシートのIDを取得するsample

 

まとめ

var ss = Spreadsheet.getActiveSpreadsheet.getId();で一行で取得も可能。

Idのコピーは意外と手間取るのでgetIdで取得するのが簡単でベンリ。

>>GASでスプレッドシートを取得する

>>スプレッドシートの全てのシートを取得する

>>スプレッドシートのURLを取得する

>>スプレッドシートのドキュメントの名前を取得する