Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting 自动排序多个列,第二列也可以_Sorting_Google Apps Script - Fatal编程技术网

Sorting 自动排序多个列,第二列也可以

Sorting 自动排序多个列,第二列也可以,sorting,google-apps-script,Sorting,Google Apps Script,我有一个排序问题。我的表中有两列需要按primary=column 1、secondary=column 4排序。我正在使用下面的脚本,它可以按照第1列进行排序,如果我也在第1列中做了更改,而不是自己,它可以按照第4列进行排序。我想能够编辑一个值只是第4列的值,并让它做二次排序 例:第1栏:日期,第2栏:姓氏,第3栏:DOB,第4栏:付款 我希望以日期升序维护电子表格,允许重复值,但以付款金额升序进行二次组织。这样我就可以按日期看到从最高付款到最低付款的顺序。如果我只更改单元格中的付款数据,我希

我有一个排序问题。我的表中有两列需要按primary=column 1、secondary=column 4排序。我正在使用下面的脚本,它可以按照第1列进行排序,如果我也在第1列中做了更改,而不是自己,它可以按照第4列进行排序。我想能够编辑一个值只是第4列的值,并让它做二次排序

例:第1栏:日期,第2栏:姓氏,第3栏:DOB,第4栏:付款 我希望以日期升序维护电子表格,允许重复值,但以付款金额升序进行二次组织。这样我就可以按日期看到从最高付款到最低付款的顺序。如果我只更改单元格中的付款数据,我希望它在第1列日期之前,然后在第4列付款。这个脚本没有完成最后一点。有什么建议吗

/**
 * Automatically sorts the 1st column (not the header row) Ascending.
 */
function onEdit(event){
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var editedCell = sheet.getActiveCell();

  var columnToSortBy = 1;
  var tableRange = "A2:T99"; // What to sort.

  if(editedCell.getColumn() == columnToSortBy){   
    var range = sheet.getRange(tableRange);
    range.sort( [1, 4] ); // or
    range.sort( [{ column: 1, ascending: true }, 4] ); // or
    range.sort( [{ column: 1, ascending: true }, { column: 4, ascending: true }] );
  }
}

也许我不明白这个问题?我建议将您的if声明从

if(editedCell.getColumn() == columnToSortBy){ 
  ...
}  

if((editedCell.getColumn() == columnToSortBy) || (editedCell.getColumn() == 4)){   
  ...
}