https://docs.google.com/spreadsheets/d/1iZkAtyY2vwJUnpwStILr8M1BxaMMV0jI0WDN78kxDtk/edit#gid=0
所以我希望第一张表对排名列进行单独排序,第二张表也对组合列进行排序。这是到目前为止完成的编码,但它不起作用。
function myFunction() {
function onEdit(e){
multiSortColumns();
}
function multiSortColumns(){
SHEET_NAME = "The Resistance { Member Roster )";
SORT_DATA_RANGE = "E5:E1183";
SORT_ORDER = [
{column: 5, ascending: true}, // 5 = column number, sorting by descending order
{column: 4, ascending: true}, // 1 = column number, sort by ascending order
];
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(SHEET_NAME);
var range = sheet.getRange(SORT_DATA_RANGE);
range.sort(SORT_ORDER);
ss.toast('Sort complete.');
SHEET_NAME = "The Resistance ( War Roster )";
SORT_DATA_RANGE = "C5:C63";
SORT_ORDER = [
{column: 3, ascending: true}, // 3 = column number, sorting by descending order
{column: 2, ascending: true}, // 1 = column number, sort by ascending order
];
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(SHEET_NAME);
var range = sheet.getRange(SORT_DATA_RANGE);
range.sort(SORT_ORDER);
ss.toast('Sort complete.');
}
}
如果有人可以尝试修复它,我添加了Google文档的副本,非常感谢!
我观看了YouTube视频并阅读了一些教程,但我正在努力正确识别正确的列值。
我相信你的目标如下。
- 从
i want the 1st sheet to sort the rank colum by itself and the 2nd sheet to sort the comp colum by itself as well
,您要使用工作表的"E"列进行排序The Resistance{ Member Roster )
并使用工作表The Resistance( War Roster )
C列进行排序。
修改点:
- 在显示脚本中,即使运行
myFunction()
,也不会运行任何脚本。请小心这一点。 - 当我看到您提供的电子表格时,工作表名称似乎不正确。这样,脚本无法正确运行。
The Resistance { Member Roster )
需要修改为The Resistance{ Member Roster )
。The Resistance ( War Roster )
需要修改以The Resistance( War Roster )
。
- 在您的目标中,您要对工作表
The Resistance{ Member Roster )
"E"列进行排序,并对工作表The Resistance( War Roster )
C 列进行排序。但是,在您的脚本中,使用了 2 列。 - 在这种情况下,我认为您可能想用
The Resistance{ Member Roster )
工作表的"E"列对"B5:K1183"进行排序,并且还想用The Resistance( War Roster )
工作表的"C"列对"B5:H63"进行排序。
当这些要点反映在您的脚本中时,下面的修改怎么样?
修改后的脚本:
function onEdit(e) {
multiSortColumns();
}
function multiSortColumns() {
SHEET_NAME = "The Resistance{ Member Roster )";
SORT_DATA_RANGE = "B5:K1183";
SORT_ORDER = [{ column: 5, ascending: true }];
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(SHEET_NAME);
var range = sheet.getRange(SORT_DATA_RANGE);
range.sort(SORT_ORDER);
SHEET_NAME = "The Resistance( War Roster )";
SORT_DATA_RANGE = "B5:H63";
SORT_ORDER = [{ column: 3, ascending: true }];
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(SHEET_NAME);
var range = sheet.getRange(SORT_DATA_RANGE);
range.sort(SORT_ORDER);
ss.toast('Sort complete.');
}
注意:
当我看到您的Google Apps Script项目时,我在同一个Google Apps Script项目中发现了相同的函数名称。在这种情况下,请重命名其他函数。在不重命名函数的情况下测试脚本时,脚本无法正确运行。请小心这一点。
我使用您提供的电子表格测试了这个修改后的脚本。更改电子表格时,可能无法使用该脚本。请小心这一点。