我正在尝试根据J(10)列对工作表的范围进行排序,但是我只希望在N9和AG190之间的单元格被编辑时对其进行排序。
当前,任何地方的任何编辑都会触发排序,而这并不是bueno。
我已经整理了以下内容,但实际上我不知道自己在做什么
function myFunction() {
}
function onEdit(event){
var sheet = event.source.getActiveSheet();
var editedCell = sheet.getActiveCell();
var columnToSortBy = 10;
var startColumn = 14;
var endColumn = 33;
var tableRange = "a9:cq188";
if((editedCell.getColumn() <= endColumn || editedCell.getColumn() >= startColumn)) {
var range = sheet.getRange(tableRange);
range.sort( { column : columnToSortBy, ascending: false } );
}
}
第一次在这里发布,谢谢您的帮助
答案 0 :(得分:1)
尝试一下:
function onEdit(e){
//if(e.range.getSheet().getName()!='DesiredSheet Name')return;//you might want to put something like this in here to limit its operation to a single sheet
if(e.range.columnStart>=14 && e.range.columnStart<=33 && e.range.rowStart>=9 & e.range.rowStart<=190) { //N9 and AG190
e.range.getSheet().getRange("A9:CQ188").sort({column:10,ascending:false});
}
}