首页 > 解决方案 > 跨多个工作表更改多个用户的权限

问题描述

因此,我正在构建一个电子表格,供多个组中的多个用户使用。以前我手动分配了权限。然而,当一个用户被添加或离开一个组时,这是非常乏味的。我收到由 .getvalues 拾取空白单元格并将它们发送到 .addEditors 引起的错误。

这是我所拥有的:

    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);
  }
}
}
}

标签: google-apps-script

解决方案


推荐阅读