SCript
code:gas.js
var CHKURL = '' // 処理する名簿
function chkNameVert(){
const mybook = SpreadsheetApp.getActiveSpreadsheet();
const chkbook = SpreadsheetApp.openByUrl(CHKURL);
const newbook = SpreadsheetApp.create("Result-sheet"); // 結果のシート
const chk = chkbook.getSheets();
const rml = mybook.getSheetByName("削除用データ"); //削除データのあるシート名
const rmLast = rml.getLastRow();
console.log("削除リスト最終行", rmLast);
chk.forEach(function(sheet){
let sheetname = sheet.getName();
let newsheet = newbook.insertSheet();
newsheet.setName(sheetname);
// チェックデータの配列化
const datarow = sheet.getLastRow();
const datacol = sheet.getLastColumn();
console.log(datarow,datacol);
for(var i = 1;i<=datacol;i++){
data = sheet.getRange(2,i,datarow-1).getValues();
for (var j=1;j<rmLast;j++){
let keyname = rml.getRange(j,1).getValue(); // 名前のカラム
let flag = rml.getRange(j,3).getValue(); // フラグのカラム
if (flag == 'remove'){ //処理したいラベル名
const newData = data.filter(record => record0 != keyname); console.log(data.length,newData.length,keyname);
data = newData ;
}
}
//console.log(data);
newsheet.getRange(2,i,data.length).setValues(data);
}
});
}