Из полученной ошибки кажется, что ошибка, с которой вы столкнулись, связана с триггером onEdit
.
Следовательно, вы можете внести следующие изменения:
var regEx= /^\w+$/;
if (e.value.match(regEx)) {
eval(e.value);
e.range.clear();
}
Если вы хотите Чтобы использовать Регулярные выражения со Сценарием приложений, вам нужно использовать функцию .match()
, или вы можете создать новый объект RegExp
.
Но поскольку вы пытаетесь выполнить простую сортировку, вам не обязательно использовать регулярное выражение, вы можете попробовать это:
function onEdit(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Main");
var range = sheet.getRange("A3:17");
if (e.range.getA1Notation() == 'A20') {
if (e.value == "SortbyName" ) {
e.range.clear();
range.sort(1);
}
else if (e.value == "SortbyClass" ) {
e.range.clear();
range.sort(2);
}
else if (e.value == "SortbyContri") {
e.range.clear();
range.sort(3);
}
}
}