Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.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电子表格,以便他们可以使用它,但不能修改它_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 与工作组共享包含脚本的Google电子表格,以便他们可以使用它,但不能修改它

Google apps script 与工作组共享包含脚本的Google电子表格,以便他们可以使用它,但不能修改它,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我已经编写了一个Google电子表格脚本,它从用户提供的CSV文件中读取数据,用数据填充一张表,用不同的名称复制电子表格,并提供一个链接供用户单击以查看新的电子表格。制作新副本后,原始电子表格将清除用户数据并恢复到原始状态,以便其他用户可以使用 我希望与工作组(数百名用户)共享此电子表格,但我不希望他们能够修改工作表或脚本。如果我以只读方式共享它,脚本将不会运行,但要让脚本运行,我必须允许用户具有编辑功能,这是一件坏事 我用谷歌搜索自己,试图找到一个方向,但我仍然在荒野中徘徊 你们谁能给我指出正

我已经编写了一个Google电子表格脚本,它从用户提供的CSV文件中读取数据,用数据填充一张表,用不同的名称复制电子表格,并提供一个链接供用户单击以查看新的电子表格。制作新副本后,原始电子表格将清除用户数据并恢复到原始状态,以便其他用户可以使用

我希望与工作组(数百名用户)共享此电子表格,但我不希望他们能够修改工作表或脚本。如果我以只读方式共享它,脚本将不会运行,但要让脚本运行,我必须允许用户具有编辑功能,这是一件坏事

我用谷歌搜索自己,试图找到一个方向,但我仍然在荒野中徘徊

你们谁能给我指出正确的方向吗?如果我需要更具体或提供更多信息,我将很乐意这样做

谢谢

拉里

附注:其他值得注意的问题:

o电子表格中的应用程序脚本是否可以激活新副本并“关闭”原始共享电子表格


o用户是否可以成为新副本的所有者?

可以选择将不希望修改的代码放入独立的应用程序脚本文件中,然后将该代码用作绑定到工作表的脚本中的“库”。您可以将单机应用程序脚本上的权限设置为仅查看。这将阻止人们改变它。当您与用户共享应用程序脚本文件时,他们将收到电子邮件通知。因此,他们将拥有该文件的URL,可以查看它,但不能编辑它。(如果将其设置为“仅查看”)

因此,您将同时使用电子表格文件和应用程序脚本文件。两个文件,并将共享设置为仅在应用程序脚本文件上查看。您仍然可以为用户提供电子表格的编辑权限

您需要经历一个使该功能可用于电子表格的过程。这称为“库”,但在创建文件时不要太注意这个名称

  • 创建独立应用程序脚本
  • 创建要共享的函数
  • 获取项目密钥-->文件、项目属性

  • 与您要授予访问权限的用户共享应用程序脚本文件,但仅授予他们对该文件的查看权限。不编辑
  • 将项目密钥交给用户(在本例中,只有您一个人)并让他们添加库,或者如果您有权访问电子表格,您可能可以自己添加密钥。因此,在您的情况下,您不会与任何人共享项目密钥。你不需要
  • 在绑定到电子表格的脚本文件中,单击“资源”菜单和“库”菜单项
  • 输入项目密钥

  • 单击“选择”按钮,然后打开库
  • 确保将库标识符设置为要使用的关键字
  • 转到代码编辑器,创建一个函数,然后键入库标识符
  • 将显示库中可用的所有函数


请记住,创建库无非是在独立的应用程序脚本文件中的应用程序脚本中编写代码。如果您已经这样做了,那么您需要共享的就是项目密钥。打开资源库时,库的用户将看不到所有可用库的列表。您需要钥匙。

谢谢您的指导!!我会让你知道我的情况。是的。我想知道它是如何工作的。我通过登录和注销不同的谷歌账户对它进行了一些测试,但在“现实生活”中没有使用过:)