Como conseguir que onEdit pare

Tengo un script en google apps que funciona de la siguiente manera:

Sheet: esta bloqueado excepto ciertas celdas que otros pueden editar.

Por ese mismo bloqueo, el onEdit simple no me funciona, así que he tenido que crear un tigger que me llamara al onEdit instalable para que funcionase en una persona que solo tiene permiso para editar ciertas celdas.

Pues bien:

1- Al rellenar C5 se muestran las filas hasta la C11 y se nos activa la C8

2- al vaciar C5 se amagan las filas.

Pues bien, funciona, hasta con 3r. Personas, pero este script tiene fallos:

function createSpreadsheetEditTrigger() {
  var e = 'C5';
  var ss = SpreadsheetApp.getActive().getActiveSheet().getActiveCell();
  ScriptApp.newTrigger('onEdit')
      .forSpreadsheet(ss)
      .onEdit()
      .create();
}

function onEdit(){
var app = SpreadsheetApp;
var activeSheet = app.getActiveSpreadsheet().getActiveSheet();
var workingCell = activeSheet.getRange(5, 3).getValue();
if(workingCell !== ""){
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getActiveSheet().showRows(7, 6);
  spreadsheet.getRange('C8').activate();
} else {
var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getActiveSheet().hideRows(7, 6);
  spreadsheet.getRange('C5').activate();
}

}

1r. Fallo:

Siempre, la última fila de la primera función indica:

Valor incorrecte (línia 7, fila "macros")

2n. Fallo:

El onEdit es constante... Aunque C5 ya este relleno, sigue enviandote a C8.

Una vez relleno C5 y ejecutado el onEdit, debería parar, a no ser que se vacié C5.

Añade tu respuesta

Haz clic para o