结合2个Onedit函数ib 1脚本

时间:2016-08-11 03:07:43

标签: scripting google-sheets

我有2个onEdit脚本,详情如下所示。我需要以某种方式将两个scrpit组合成一个。第一个脚本在编辑Worksheet1中的第9列时自动进行中断。 问题1:如果我需要与Worksheet2中的第11列相同的功能,如何使其运行?

另一个脚本在onEdit上插入一行,但它会在所有工作表上执行此操作。 问题2:如何在某个单元格被广告时限制它运行,即:工作表1中的Q2和& 2吗

问题3:如何将两个脚本合并为一个脚本?

我是一个完整的脚本编写新手,所以请尽可能简单地让你的激光,谢谢

脚本我分开工作:

脚本1自动排序

function onEdit(event) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  if(sheet.getName()=='Worksheet1') {
    var editedCell = sheet.getActiveCell();
    var columnToSortBy = 9;
    var tableRange = "a3:Q999";

    if(editedCell.getColumn() == columnToSortBy) {   
      var range = sheet.getRange(tableRange);
      range.sort({column: 9, ascending: false});

      Browser.msgBox("sort done"); 
    }
  }
}

脚本2 InsertRow

var ss = SpreadsheetApp.getActive();

function onEdit() {
    var firstRow = 3;
    var sh = ss.getActiveSheet();
    var lCol = sh.getLastColumn();
    var range = sh.getRange(firstRow, 3, 1, lCol);
    var formulas = range.getFormulas();
    sh.insertRowsAfter(1, 1);
    newRange = sh.getRange(firstRow, 3, 1, lCol);
    newRange.setFormulas(formulas);
}

1 个答案:

答案 0 :(得分:0)

我通常会创建一个onEdit函数,它会一个接一个地调用其他函数:

function onEdit(event) {
  myFunction1(event);
  myFunction2();
}

function myFunction1(event) {
  // do something
}

function myFunction2() {
  // do something else
}