Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 仅允许用户在使用';仅查看';类型共享_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 仅允许用户在使用';仅查看';类型共享

Google apps script 仅允许用户在使用';仅查看';类型共享,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正在运行一个工作表,人们可以通过运行脚本来复制,在模板文件上,我希望用户只看到其中一个工作表,其中包含一个按钮,该按钮运行脚本来复制文件 我确实希望将文档作为“仅查看”文件共享,尽管我仍然希望用户编辑按钮所在的范围,以便他们可以单击此按钮并运行脚本 我曾尝试使用类保护通过应用程序脚本保护工作表和删除编辑器,但这似乎不起作用-我创建了以下我希望能起作用的内容: var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.getSheetByNa

我正在运行一个工作表,人们可以通过运行脚本来复制,在模板文件上,我希望用户只看到其中一个工作表,其中包含一个按钮,该按钮运行脚本来复制文件

我确实希望将文档作为“仅查看”文件共享,尽管我仍然希望用户编辑按钮所在的范围,以便他们可以单击此按钮并运行脚本

我曾尝试使用类保护通过应用程序脚本保护工作表和删除编辑器,但这似乎不起作用-我创建了以下我希望能起作用的内容:

  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');
有人知道我该怎么做吗?

返回一个数组,而接受
用户
(单数)作为参数。用于删除用户:

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