试图了解我在此onedit事件中做错了什么

时间:2018-08-15 14:01:36

标签: google-apps-script google-sheets

所以我发现这个onedit甚至是其他人在堆栈溢出时发布的,我正在尝试对其进行修改以适合我的目的。我希望它隐藏/取消隐藏行的多个部分,并在每个部分的顶部带有复选框。当我加载它时,第一个复选框可以正常工作,但是我添加的复选框却不能。我可以将它们分别添加到函数中,但是一次只能使用其中之一。这是函数:

function onEdit(e) {
  var cfg = { // Please set this object.
    C7:  {startRow: 8, endRow: 22},
    C23:  {startRow: 24, endRow: 44}


  };

  var activeRange = e.range.getA1Notation();
  var ranges = Object.keys(cfg);
  if (cfg[activeRange]) {
    var sheet = e.source.getActiveSheet();
    var values = sheet.getRange(ranges[0] + ":" + ranges[ranges.length - 1]).getValues();
    values.forEach(function(e, i) {
      if (e[0]) {
        sheet.showRows(cfg[ranges[i]].startRow, cfg[ranges[i]].endRow - cfg[ranges[i]].startRow);
      } else {
        sheet.hideRows(cfg[ranges[i]].startRow, cfg[ranges[i]].endRow - cfg[ranges[i]].startRow);
      }
    });
  }
}

0 个答案:

没有答案