簡體   English   中英

僅允許用戶在使用“僅查看”類型共享時編輯特定范圍

[英]Only allow users to edit a specific range whilst using a 'view only' type share

我正在運行一個人們可以通過運行腳本復制的工作表,在模板文件上,我希望用戶只看到其中一個工作表,其中包含一個運行腳本來復制文件的按鈕。

我真的想將文檔作為“僅查看”文件共享,盡管我仍然希望用戶編輯按鈕所在的范圍,以便他們可以單擊此按鈕並運行腳本。

我曾嘗試使用類保護通過 Apps 腳本保護工作表和刪除編輯器,但這似乎不起作用 - 我創建了以下我希望可以工作的內容:

  var ss = SpreadsheetApp.getActiveSpreadsheet(); 
  ss.getSheetByName('BALANCE SHEET').protect();
  ss.getSheetByName('LANDING SHEET').protect();
  ss.getSheetByName('CATEGORIES').protect();
  ss.getSheetByName('REMINDERS').protect();
  var user = ss.getEditors();
  ss.removeEditor(user);
  ss.addEditor('xxx@xxx.xxx');

有沒有人知道我該如何做到這一點?

Spreadsheet.getEditors()返回一個user s數組,而removeEditor接受一個user (單數)作為參數。 使用Array.forEach刪除用戶:

const users = ss.getEditors();
users.forEach(user =>  ss.removeEditor(user));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM