シートを操作する

【GAS】スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入する

GASでスプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するには「insertSheet(sheetName, sheetIndex, options)」を利用する。

insertSheet(sheetName, sheetIndex, options)

指定されたインデックスで指定された名前の新しいシートをスプレッドシートに挿入し、オプションの高度な引数を使用します。新しいシートがアクティブシートになります。

https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet#insertsheetsheetname,-sheetindex,-options

スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するGAS実行の様子

insertSheet(sheetName, sheetIndex, options)メソッドを利用して、スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するGASを実行してみました。

insertSheet(sheetName, sheetIndex, options)-yes
insertSheet(sheetName, sheetIndex, options)を実行した場合

insertSheet(sheetName, sheetIndex, options)メソッドの()の値については、

  • sheetNameには任意のシート名を
  • sheetIndexにはシートインデックスを
  • optionsにはテンプレートとなるシートを

上記を各指定することで、テンプレートシートをコピー・任意の場所(インデックス)に・任意の名前へ変更されたシートが挿入されます。

insertSheet()メソッドでシート名とオプションを指定したシート挿入を行う場合は、以下記事を御覧ください。

参照記事:【GAS】スプレッドシートに名前とオプションを指定した新規シートを挿入する

スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するGAS

function insertshtnameopt(){
  //SpreadsheetAppを起動
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  //0番目のシート取得
  var sht = ss.getSheets()[0];
  //0番目のシートをテンプレートにする。メッセージ掲載のために名前を取得
  var tmpname = sht.getSheetName();
 //YES・Noで確認
 var yesno = Browser.msgBox("シート名とインデックスを指定した「"+tmpname+"シート」のコピーを作成しますか?" ,Browser.Buttons.YES_NO_CANCEL);
 //ーーーーー条件分岐ーーーーー
  //YESだったら
    if(yesno=="yes"){
      //シート名を入力してもらう
      var text = Browser.inputBox("挿入するシートの名前を入力してください");
      //numを入力してもらう
      var num = Browser.inputBox("挿入するシートのインデックスを入力してください(シート数以下の数値)");
      //inputBoxの文字列を数値へ型変換
      var n_num = Number(num);
      //■insertSheetでtextとn_numとtemplateを指定した新規シートを挿入
        ss.insertSheet(text,n_num,{template:sht});
      //処理内容をメッセージで掲載
      Browser.msgBox("「"+tmpname+"」をコピーして「インデックス"+n_num+"番目」に「"+text+"シート」を挿入・Activeにしました!")
    }else{
      //Noのときの処理内容をメッセージで掲載
      Browser.msgBox("新規シートの挿入はしませんでした。")
    }
//ーーーーーここまでーーーーー
}

insertSheet(sheetName, sheetIndex, options)のパラメーター

名前タイプ説明
sheetNameString新しいシートの名前。
sheetIndexInteger新しく挿入されたシートのインデックス。スプレッドシートの最初のシートとしてシートを挿入するには、シートを0に設定します。
optionsObjectオプションのJavaScript高度な引数。
insertSheet(sheetName, sheetIndex, options)のパラメーター

insertSheet(sheetName, sheetIndex, options)の高度なパラメーター

名前タイプ説明
templateSheetテンプレートシートオブジェクトのすべてのデータが新しいシートにコピーされます。シートテンプレートは、Spreadsheetオブジェクトのシートの1つである必要があります。
insertSheet(sheetName, sheetIndex, options)の高度なパラメーター

insertSheet(sheetName, sheetIndex, options)の戻り値

Sheet—新しいシート。

スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するまとめ

GAS×スプレッドシートに名前・オプション・インデックスを指定した新規シートを挿入するならinsertSheet(sheetName, sheetIndex, options)メソッドを利用しましょう。

関連記事:【GAS】スプレッドシートに名前とインデックスを指定した新規シートを挿入する

関連記事:【GAS】スプレッドシートで指定した名前で新規シートを作成する

関連記事:【GAS】スプレッドシートのグリッド線を非表示にする

関連記事:【GAS】スプレッドシートのシート名を変更する

関連記事:【GAS】スプレッドシートをコピーして新規シートを作成する

関連記事:【GAS】スプレッドシートのアクティブシートを削除する

関連記事:【GAS】スプレッドシートで現在アクティブなシートを返す

関連記事:【GAS】スプレッドシートで名前・行・列数を指定して新規シートする

関連記事:【GAS】スプレッドシートのアクティブシートの名前を取得する

関連記事:【GAS】スプレッドシートでアクティブなシートを返す

関連記事:【GAS】スプレッドシートでアクティブなシートを取得する

-シートを操作する