那些行超出范围

时间:2019-01-19 16:07:40

标签: google-apps-script google-sheets

我正在使用命名范围来处理一组行。看起来像这样:chkBxs = Sheet11!A2:A9

运行代码时,出现“行越界”消息。在此消息之前,是以下输出“ Sheet.hideRows([0])[0秒]”。

这是我正在使用的代码:

    var boxes = sheet.getRange("chkBxs").getValues();//.getValues();
    if (ckbx.getValue().toString() == 'true'){
     boxes.forEach(function(r,i){
      Logger.log(i);
      if (r[0].toString() == 'false'){
        sheet.hideRows(i);
      }
    });

  }else{
    boxes.forEach(function(r,i){

      sheet.showRows(i);
  });
  }

测试表如下:

   A     B          C
1                   CKBX
2 FALSE hidden 3
3 FALSE vis 4
4 FALSE hidden 5
5 TRUE  vis 6
6 FALSE hidden 7
7 TRUE  vis 8
8 FALSE hidden 9
9 TRUE  vis 10

我尝试修改范围,但是没有运气。

编辑: 我只是将命名范围更改为Sheet11!A1:A9,它可以正常工作。但是我需要它从第2行开始,而不是从第1行开始。

1 个答案:

答案 0 :(得分:0)

由getRange使用getRangeByName

注意:这是Class Spreadsheet方法,而不是Class Sheet方法。