Защитить строку, если ячейка содержит текст - PullRequest
0 голосов
/ 01 марта 2020

У меня есть лист для записи некоторых расходов, я поделился этим листом с кем-то, но в нем есть столбец для моего обзора, и я хотел бы защитить строку, если в столбце содержится «Утверждено».

I хотел бы защитить его используя диапазон защиты, если это возможно

Sheet preview

1 Ответ

1 голос
/ 01 марта 2020

Защита утвержденных строк

function protectApprovedRows() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('name');
  var sr=2;
  var sc=1;
  var vs=sh.getRange(sr,sc,sh.getLastRow()-sr+1,sh.getLastColumn()-sc+1).getValues();
  var me = Session.getEffectiveUser(); 
  vs.forEach(function(r,i){
    if(r[4]=="Approved") {
      var protection=sh.getRange(i+sr,sc,1,sh.getLastColumn()-sc+1).protect();
      protection.addEditor(me); 
      protection.removeEditors(protection.getEditors()); 
      if (protection.canDomainEdit()) { 
        protection.setDomainEdit(false); 
      }
    }
  });
}

Range.Protect ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...