Так просто создайте скрипт сортировки и запускайте его триггером по времени, как я написал ранее. А так же я писал, что этот скрипт надо переделывать под новые условия.
Получиться может что-то вроде этого:
function SortTrigger {
try {
// Определяем текущий лист
var ss = SpreadsheetApp.getActiveSheet();
// Определяем имя листа
var sName = ss.getName();
if (sName != 'Разовые') {
return;
}
var NumRow = ss.getLastRow();
ss.getRange(3, 1, NumRow - 2, 14).sort([{column: 5, ascending: true},{column: 12, ascending: false},{column: 3, ascending: true}]);
var f = ss.getFilter().getColumnFilterCriteria(11);
if (!f) {
f = SpreadsheetApp.newFilterCriteria()
.setHiddenValues(['Архив'])
.build();
}
var h = f.getHiddenValues();
if (h.indexOf('Архив') == -1) {
h.push('Архив');
f = SpreadsheetApp.newFilterCriteria().setHiddenValues(h).build();
}
ss.getFilter().setColumnFilterCriteria(11, f);
} catch (e) {
Browser.msgBox('onEdit: ' + e);
}
}
а в триггере именно эту функцию(SortTrigger) и надо будет указать для запуска. Только тут попутно момент еще и такой, что все это сможет произойти, если сам документ открыт и активен лист "Розовые".