シートIDを指定してそのシートを取得するコードの例です
シートIDについて
以下のコード.gsを実行すると指定したシートのA1セルに hello が入力されます
コード.gs
function set_value(){
var sh_id = SHEET_ID;
var sh = get_sheet(sh_id);
var range = sh.getRange("A1");
range.setValue("hello")
}
function get_sheet(sh_id) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var shs = ss.getSheets();
for (var i = 0; i < shs.length; i++) {
if (shs[i].getSheetId() == sh_id) {
break;
}
}
var sh = ss.getSheets()[i];
return sh;
}
|
意訳この機能がやること シートIDを指定して get_sheet()に渡してシートを取得して セルを指定して helloを入力する この機能がやること 現在開いているスプレッドシートを取得して シートをすべて取得して シートの数だけ以下を繰り返す シートのIDが渡されたシートIDなら for文から抜ける 対象のシートを取得して 返す |
Activesheet以外のシートを取得する場合
コード.gsfunction set_value(){
var ss_url = "スプレッドシートのURL";
var ss = SpreadsheetApp.openByUrl(ss_url);
var sh_id = 対象のシートのID;
var sh = get_sheet(ss, sh_id);
var range = sh.getRange("A1");
range.setValue("hello")
}
function get_sheet(ss, sh_id) {
var shs = ss.getSheets();
for (var i = 0; i < shs.length; i++) {
if (shs[i].getSheetId() == sh_id) {
break;
}
}
var sh = ss.getSheets()[i];
return sh;
}
|
関連記事
シートIDを指定してデータ入力する