Google表格仅循环/遍历可见的工作表

时间:2018-05-15 23:16:29

标签: loops for-loop google-apps-script google-sheets google-sheets-api

我想迭代仅显示 Google表格并在每个表单中运行代码,但似乎无法找到我将如何执行此操作...

我有以下代码,它贯穿所有工作表,甚至是隐藏的代码:

function loopTest() {
var ss = SpreadsheetApp.getActive();
var allsheets = ss.getSheets();
for (var s in allsheets){
var sheet=allsheets[s]

//code to run here:
  sheet.getRange('B4').setValue('test');

  }
}

任何人都可以建议我如何排除隐藏的纸张,以便代码仅适用于可见的纸张?

提前感谢您的任何帮助。

1 个答案:

答案 0 :(得分:3)

我找到了一个解决方案: -

function loopTest() {
var ss = SpreadsheetApp.getActive();
var allsheets = ss.getSheets();
for (var s in allsheets){
var sheet=allsheets[s]

   //Test is sheet is not hidden
   if (sheet.isSheetHidden()!= true) {

   //if not hidden run some code     
   sheet.getRange('A10').setValue('Nailed it!');

       }    
    }
}

希望这有助于将来的某个人:)