【问题标题】:How to affect multiple sheets from a script如何影响脚本中的多个工作表
【发布时间】:2019-02-28 17:59:11
【问题描述】:

在 Google 表格上,我想在整个文档中隐藏值为 'Del' 的行,这意味着多个工作表。此外,我希望仅当我从工作表 'Pricing breakdown' 更新单元格 E39 时才会发生这种情况。

我当前的代码非常适合工作表'Pricing breakdown',但我希望它也能影响工作表'Project Plan''Payment Plan',如果你能帮助我只在我更改E39 时运行此脚本,则可以加分来自工作表'Pricing breakdown'

function onEdit(event){
      var s = SpreadsheetApp.getActive().getSheetByName('Pricing breakdown');
      s.showRows(1, s.getMaxRows());

  s.getRange('A:A')
    .getValues()
    .forEach( function (r, i) {
    if (r[0] == 'Del') 
      s.hideRows(i + 1);
    });
}

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    试试这个:

    function onEdit(e){
      var rg=e.range;
      var sh=rg.getSheet();
      if(sh.getName()!='Pricing breakdown'){return;}
      if(e.range.getA1Notation() == 'E39') {
        var shA=['Pricing breakdown','Project Plan','Payment Plan'];
        for(var j=0;j<shA.length;j++) {
          var s=e.source.getSheetByName(shA[j]);
          s.showRows(1,s.getMaxRows());
          //e.source.toast(s.getName());
          s.getRange('A:A').getValues()
          .forEach( function (r, i) {
            if (r[0] == 'Del') 
              s.hideRows(i + 1);
          });
        }
      }
    }
    

    【讨论】:

    • 谢谢!我收到以下错误:TypeError: Cannot read property "range" from undefined.
    • Still :( TypeError: Cannot read property "range" from undefined. 尝试从编辑器运行并实时测试它并停止在第一张工作表上工作。
    • 我希望您意识到这不是您可以从脚本编辑器运行的那种功能。
    猜你喜欢
    • 1970-01-01
    • 2016-03-22
    • 1970-01-01
    • 2011-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多