GASでスプレッドシートに新しいシートを追加・挿入してアクティブシートにするには「insertSheet()
」を利用する。
insertSheet()
デフォルトのシート名を使用して、スプレッドシートに新しいシートを挿入します。新しいシートがアクティブシートになります。
https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet#insertsheet
スプレッドシートに新しいシートを追加・挿入してアクティブシートにするGAS実行の様子
insertSheet()メソッドを利用して、スプレッドシートに新しいシートを追加・挿入してアクティブシートにするGASを実行してみました。
insertSheet()では、duplicateActiveSheet()と異なり
- デフォルトのシート名+追加されたシート名のナンバリング
といったシートの名前が自動で付与されます。
参照記事:【GAS】スプレッドシートのアクティブシートを複製してアクティブシートにする
スプレッドシートに新しいシートを追加・挿入してアクティブシートにするGAS
function insertsheet(){
//SpreadsheetAppを起動
var ss = SpreadsheetApp.getActiveSpreadsheet();
//YES・NOを設定
var result = Browser.msgBox("新規シートを挿入しますか?",Browser.Buttons.YES_NO_CANCEL);
//ーーーーー条件分岐ーーーーー
//YESだったら
if(result == "yes"){
//■insertSheetで新規シートを作成・挿入
var newsht = ss.insertSheet();
//挿入されたシートの名前を取得
var shtname = newsht.getSheetName();
//メッセージで作成・挿入したシートの名前を掲載
Browser.msgBox("新規作成・挿入したシートは「"+shtname+"」です!")
} else {
//キャンセルした旨を掲載
Browser.msgBox("シートの新規挿入をキャンセルしました。")
}
//ーーーーーここまでーーーーー
}
insertSheet()の戻り値
Sheet—新しいシート。
スプレッドシートに新しいシートを追加・挿入してアクティブシートにするまとめ
GAS×スプレッドシートに新しいシートを追加・挿入してアクティブシートにするならinsertSheet()
メソッドを利用しましょう。
関連記事:【GAS】スプレッドシートをコピーして新規シートを作成する
関連記事:【GAS】スプレッドシートで指定した名前で新規シートを作成する
関連記事:【GAS】スプレッドシートのアクティブシートを削除する
関連記事:【GAS】スプレッドシートで現在アクティブなシートを返す
関連記事:【GAS】スプレッドシートで名前・行・列数を指定して新規シートする
関連記事:【GAS】スプレッドシートのアクティブシートの名前を取得する