将不受保护的Google表格范围复制到另一张表格中

时间:2019-03-10 00:12:40

标签: google-sheets google-apps-script-editor

我有一个受保护的Google工作表,并且有很多范围是该保护的例外。有没有一种方法可以使用脚本编辑器来复制工作表,然后对其进行保护,还可以复制工作表中的异常范围(即不受保护的单元格)进行复制?这样,重复的工作表将保留所有保护设置作为原始工作表。

我想出了这段代码,除了在重复的工作表中设置例外之外,它似乎还可以工作。我收到一个错误,指出“指定的范围必须是工作表的一部分”。复制并保护新工作表后,出现此错误。

function DuplicateSheetWithProtections() {
  var sheet1 = SpreadsheetApp.getActiveSheet();
  var protection1 = sheet1.protect();
  var unprotected1 = protection1.getUnprotectedRanges();
  protection1.setUnprotectedRanges(unprotected1);
  SpreadsheetApp.getActiveSpreadsheet().duplicateActiveSheet();
  var sheet2 = SpreadsheetApp.getActiveSheet();
  var protection2 = sheet2.protect();
  protection2.setUnprotectedRanges(unprotected1); 
}

0 个答案:

没有答案