Autosort不再工作:Google电子表格

时间:2014-10-02 16:18:56

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

我在旧版Google电子表格上有一个工作脚本,不再有效。 这是一个排序脚本,每次修改一列或多列时都会对行进行排序。

在新的电子表格中不再有效。我试图找出原因,但我无法捕捉错误的位置。

有人可以帮忙吗?

function onEdit(e) {
  Logger.clear()
  Logger.log('Script Start')
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  Logger.log('ss=%s', ss)
  var sheet = ss.getSheets()[0];
  Logger.log('sheet=%s',sheet)

  Logger.log('SheetName=%s',sheet.getName())
  if(sheet.getName()=='MembriForum'){
  var editedCell = sheet.getActiveCell();
  Logger.log('editedCell=%s', editedCell)
  } 

  var columnToSortBy_1 = 4;
  var columnToSortBy_2 = 6;
  var range = sheet.getDataRange();
  Logger.log('range=%s', range)


  if(editedCell.getColumn() == columnToSortBy_1 || editedCell.getColumn() ==     columnToSortBy_2){   
    var range = sheet.getRange(range.getRow()+1,         range.getColumn(),range.getNumRows()-1,range.getNumColumns() );
    Logger.log('range=%s', range)
     range.sort([{ column: columnToSortBy_1, ascending: true }, { column:     columnToSortBy_2, ascending: true}]);
  }
}

1 个答案:

答案 0 :(得分:0)

我认为这很遗憾是由于issue in new spreadsheets ...

有关详细信息,请参阅here,并明确(希望)获得Google的更多关注。

您的情况永远不会成立,因为editedCell.getColumn()始终为1