LANG SELRCT

コードを書く場所についてはこちら

2018年8月9日木曜日

スプレッドシートURLから対象のシートを取得する


スプレッドシートのURLを渡してシートIDからシートを取得して返す例です

このようなスプレッドシートのURLがあって
var ss_url = https://docs.google.com/spreadsheets/d/スプレッドシートID/edit#gid=シートID


"gid=" で区切ったときの後半部分のシートIDを取得する
var sh_id = ss_url.split("gid=")[1];



以下のコード.gsスプレッドシートURLを設定して
get_sheet_by_url() を実行すると
対象シートのA1の値がログに出ます



コード.gs
function get_sheet_by_url() {
  var ss_url = "スプレッドシートURL";
  var sheet = get_sheet(ss_url);
  Logger.log(sheet.getRange("A1").getValue());
}


function get_sheet(ss_url) {
  var ss = SpreadsheetApp.openByUrl(ss_url);
  var sh_id = ss_url.split("gid=")[1];
  var shs = ss.getSheets();
  for (var i = 0; i < shs.length; i++) {
    if (shs[i].getSheetId() == sh_id) {
      break;
    }
  }
  var sheet = ss.getSheets()[i];
  return sheet;
}