![見出し画像](https://assets.st-note.com/production/uploads/images/48804628/rectangle_large_type_2_56829d61d2a529b0656fb77bcf5a5a43.png?width=1200)
Photo by
blue_lace_moon
【GAS】Google Apps Script 活用事例 スプレッドシートのコピー時に不要なシートを一括で削除するスクリプト
期末という事で、来季に向けた計画表などを作る機会が増えました。そこでこのシートは必要だけど、あとは要らないかなと思う機会があり、スクリプトを書きました。何回もシートを削除するボタンを押さなくて済むので、楽チンです。
シートを一括削除するスクリプト
function deleteSheets() {
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const sheets = spreadsheet.getSheets();
//削除したくないシートを配列に入れておく
const array = ['シート1', 'シート2', 'シート3'];
for(const sheet of sheets){
const sheetName = sheet.getName();
//arrayに当てはまらなければ、シートを削除する
if(array.indexOf(sheetName) === -1){
console.log(sheet.getName());
spreadsheet.deleteSheet(sheet);
}
}//for
}
罫線やメモを削除するスクリプト
function clearNoteAndBorder() {
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadsheet.getSheetByName('シート名');
const range = sheet.getRange(2, 1, sheet.getLastRow()-1, sheet.getLastColumn());
//罫線とメモを削除し、塗り潰しを消す
range
.setBorder(false, false, false, false, false, false)
.clearNote()
.setBackground(null);
//console.log(range.getA1Notation());
}
シート名の変更・シートの一括作成についても過去に書いています。
[URL からシートを取得する関数]
— TSUJI KENZO (@TsujiKenzo) March 23, 2021
function getSheetByUrl_(url) {
const ss = SpreadsheetApp.openByUrl(url);
const sheets = ss.getSheets();
const sheetId = Number(url.split('#gid=')[1]);
for (const sheet of sheets) {
if (sheetId === sheet.getSheetId()) return sheet;
}
}
この記事が気に入ったらサポートをしてみませんか?