GASでスプレッドシートで現在アクティブなシートを返すには「getActive()
」を利用する。
getActive()
現在アクティブなスプレッドシートを返します。ない場合はnullを返します。 スプレッドシートのコンテキストで実行される関数は、この関数を呼び出すことにより、対応するSpreadsheetオブジェクトへの参照を取得できます。
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app?hl=en#getactive
スプレッドシートで現在アクティブなシートを返すGAS実行の様子
getActive()メソッドを利用して、スプレッドシートで現在アクティブなシートを返すGASを実行してみました。
スプレッドシートで現在アクティブなシートを返すGAS
function sheetdelete(){
//SpreadsheetAppを起動
var ss = SpreadsheetApp.getActiveSpreadsheet();
//YES/NOを設定
var result = Browser.msgBox("Sheet1を選択しますか?",Browser.Buttons.YES_NO);
//ーーーーー条件分岐ーーーーー
//YESだったら
if(result == "yes"){
//Sheet1を取得
sht1 = ss.getSheetByName("Sheet1");
//Sheet1をアクティブに
sht1.activate();
}else{
//Sheet0を取得
sht0 = ss.getSheetByName("Sheet0");
//Sheet0をアクティブに
sht0.activate();
}
//ーーーーーここまでーーーーー
//■getActiveでアクティブシートのの名前を取得
var actsht = SpreadsheetApp.getActive().getSheetName();
//メッセージでアクティブシートを掲載
Browser.msgBox("アクティブシートは"+actsht+"です!");
}
getActive()の戻り値
Spreadsheet—アクティブなスプレッドシートオブジェクト
スプレッドシートで現在アクティブなシートを返すまとめ
GAS×スプレッドシートで現在アクティブなシートを返すならgetActive()
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートで名前・行・列数を指定して新規シートする
関連記事:【GAS】スプレッドシートで指定した名前で新規シートを作成する
関連記事:【GAS】スプレッドシートのアクティブシートの名前を取得する