Changing permissions for multiple users across multiple sheets

Viewed 31

So I'm building a spreadsheet that will be used by multiple users in multiple groups. Previously I have assigned permissions manually. However, that is very tedious when a user is added or leaves a group. I'm getting an error caused by .getvalues picking up blank cells and sending them to .addEditors.

Here is what I have:

    function TestProtection() {
var ss = SpreadsheetApp.getActive()
ss.setActiveSheet(ss.getSheetByName('Store List'), true);
var sheets=['Sunday!C2:J2', 'MONDAY!C2:J2', 'TUESDAY!C2:J2']

var user = ss.getActiveSheet().getRange('B2:B9').getValues()
var smuser = ss.getActiveSheet().getRange('C2:C9').getValues()
var st=user

for (var j=1;j<user.length;j++)
{if (st){
  
for (var i=0;i<sheets.length;i++)
  {
    var st = user[j]
   var sm = smuser
    Logger.log(st)
    Logger.log(sm)
    var range= ss.getRange(sheets[i])
    var protection = range.protect().setDescription('S1')
  protection.addEditors(st);
  protection.addEditors(sm);
  }
}
}
}
0 Answers
Related