以下のものをネットで見つけて、最後の
spreadsheet.deleteSheet(sh);の
deletesheetをhideSheetにすればいいのかと思いましたが、
スクリプト実行時に
TypeError: spreadsheet.hideSheet is not a function hideSheets @ コード.gs:37
とエラーが出て出来ませんでした。
GAS初心者です。ご教授お願いします。
// プログラム0|スプレッドシート名の設定
function DeleteSheets() {
// プログラム1|スプレッドシートの情報を取得
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
// プログラム2|削除したくないシート名を配列で格納
var sheets = ['シート1','シート2'];
// プログラム3|スプレッドシートのシート数を取得
var sheetcount = spreadsheet.getNumSheets();
// プログラム4|スプレッドシートのシート数だけ繰り返す
for(var i = sheetcount; i > 1; i--){
// プログラム5|flagをtrue設定 var flag = true; // プログラム6|変数shに一番右にあるシートを設定 var sh = spreadsheet.getSheets()[i-1]; //アクティブなスプレッドシートに存在するシートを、[i-1]により配列の要素数で指定して取得し、変数shに代入 // プログラム7|プログラム2で設定したシートを確認 for (var k=0; k<sheets.length; k++){ // プログラム8|shがプログラム2で設定した削除したくないシートかどうかを判別 if (sh.getName() == sheets[k]){ // プログラム9|flagをfalseに変更してプログラム7の繰り返しループから抜ける flag = false; break; } } // プログラム10|flagがtrueならshを削除 if (flag == true){ spreadsheet.deleteSheet(sh); }
}
}
回答1件
あなたの回答
tips
プレビュー