在 google 脚本中的不同工作表上循环函数

Looping a function over different sheets in google scripts

所以我有函数可以调用 XXXX。该函数仅在一个 sheet 期间有效,只要 sheet 的名称不是“YYYY”或 sheet 名称不包含 "ZZZZ" 。我下面的内容在第一个 sheet 上运行我们的函数 (XXXX),然后在第一个和最后一个之间的 sheet 上激活最后一个没有 运行 的函数。任何帮助将不胜感激。

 function run_XXXX_for_all_tabs(){
 
 var spreadsheet = SpreadsheetApp.getActive();
 var allSheets =spreadsheet.getSheets();

  allSheets.forEach(function(sheet){
    if(sheet.getSheetName() !== "YYYY" && sheet.getSheetName().search("ZZZZ") < 0){
      sheet.activate();
      XXXX();
    }
  })
}

试试这个:

function myFunction() {

    SpreadsheetApp.getActiveSpreadsheet()
                  .getSheets()
                  .filter(i => i.getName() !== `YYYY` && !i.getName().includes(`ZZZZ`))
                  .forEach(i => {
                    i.activate()
                    XXXX()
                  })

}