シート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を指定してデータ入力する