SORT脚本适用于所有者,但不适用于编辑者

时间:2018-06-25 08:57:25

标签: google-apps-script google-sheets spreadsheet

我编写了脚本,以按A列对Google表格进行排序,然后将您带到您刚编辑的Google表格旁边的单元格中,它对所有者非常有效,但是对于编辑者来说,似乎没有任何作用从“排序”功能开始工作。

我认为这意味着其中一部分是可安装的触发器?但据我所知,我已经通过简单的触发器就做到了。

function onEdit(e) {
var spreadsheet = SpreadsheetApp.getActive();
var sheet = spreadsheet.getActiveSheet();
var cell = sheet.getActiveCell();
var NEXTcell = sheet.getActiveRange().offset(0,1);
var range = e.range;
var columnOfCellEdited = range.getColumn();
var sheet = spreadsheet.getActiveSheet();


// When Column A edited
if (columnOfCellEdited === 1) {// Column 1 is Column A

//Set marker
NEXTcell.setValue('sorting');

// Sort whole sheet excluding first 2 rows by Column A.
sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns()).activate();
spreadsheet.getActiveRange().offset(2, 0, spreadsheet.getActiveRange().getNumRows() - 2).sort({column: 1, ascending: true});

// Find original cell after sorting
var rowoffset = 3;
var rng = sheet.getRange(rowoffset, 2, 600);
var data = rng.getValues();
var search = "sorting";

  for (var i=0; i < data.length; i++) {
    if (data[i][0] == search) {
      data[i][0] = "";
      rng.setValues(data);

      var foundcell = sheet.getRange((i+rowoffset), 2);
      foundcell.activate();

      break;
    }
  }

} }

1 个答案:

答案 0 :(得分:0)

因此Stackdriver记录了双赢。 原来我没有考虑过的保护措施才是罪魁祸首。