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