Попробуйте:
function onEdit(e) {
e.source.toast('Entry');
const sh=e.range.getSheet();
if(sh.getName()!='Sheet Name')return;//you need to change this sheetname
const X=sh.getRange('C2').getValue();
if(X=='Past campaigns - actual cashflows to date only') {
e.source.toast('flag1');
sh.hideRows(e.range.rowStart,e.range.rowEnd-e.range.rowStart+1);
}
}
Нет необходимости использовать активацию в большинстве скриптов и, конечно, в этом, поскольку она должна завершиться sh за 30 секунд. Они используют активацию в макросах, потому что они следуют за вашими действиями, когда вы перемещаетесь по экрану. Но в сценарии, как правило, не нужно сильно взаимодействовать с экраном, потому что он замедляет сценарий и на самом деле ничего не выполняет sh.
Я сейчас использую в сценарии он запускается, когда электронная таблица открывается, потому что в ней много строк, и я хочу, чтобы она была go до последней строки. Так что активация полезна, потому что мне не нужно прокручивать вниз до последней строки каждый раз, когда я открываю электронную таблицу.
попробуйте это так:
function onEdit(e) {
//e.source.toast('Entry');
var sh=e.range.getSheet();
if(sh.getName()!='Sheet Name')return;//you need to change this sheetnamee
var X=sh.getRange('C2').getValue();
if(X=='Past campaigns - actual cashflows to date only') {
//e.source.toast('flag1');
sh.hideRows(e.range.rowStart,e.range.rowEnd-e.range.rowStart+1);
}
}
Я надеюсь, что вы Вы не пытаетесь запустить это из редактора сценариев, потому что это не сработает.