这是我的脚本,但由于某些奇怪的原因而无法使它正常工作?使我抓狂。

function removeThenSetProtection() {
  // Remove all range protections in the spreadsheet that the user has
  //permission to edit.
  var ss = SpreadsheetApp.getActive();
  var protections = ss.getProtections(SpreadsheetApp.ProtectionType.SHEET);

  for (var i = 0; i < protections.length; i++) {
    var protection = protections[i];
    if (protection.canEdit()) {
      protection.remove();
    }
  }
}

最佳答案

更改:

var protections = ss.getProtections(SpreadsheetApp.ProtectionType.RANGE);


至:

var protections = ss.getProtections(SpreadsheetApp.ProtectionType.SHEET);


这样,您可以放心,您将获得对所有受保护内容的引用,并且将来不会发生冲突。

关于javascript - Google电子表格-删除范围保护时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28778327/

10-08 23:21