如果脚本是从 Google 表格、文档、幻灯片或表单文件(而不是作为独立脚本)创建的,则该脚本会被绑定到该文档。绑定脚本附加到的文件称为“容器”。绑定脚本的行为通常类似于独立脚本,只是不会出现在 Google 云端硬盘中,无法与绑定的文件分离,并且它们会获得一些对父文件的特殊权限。
请注意,脚本也可以绑定到 Google 协作平台,但这些脚本几乎总是部署为 Web 应用。绑定到 Google 表格、文档、幻灯片或表单的脚本也可以成为 Web 应用,但这种情况并不常见。
创建绑定脚本
Google 文档、表格或幻灯片
如需在 Google 文档、表格或幻灯片中创建绑定脚本,请在 Google 文档、Google 表格或 Google 幻灯片中打开相应文档、电子表格或演示文稿,然后依次点击扩展程序 > Apps 脚本。今后如需重新打开脚本,请执行相同的操作或从 Apps 脚本信息中心打开脚本。
Google 表单
如需在 Google 表单中创建绑定脚本,请打开表单,然后依次点击“更多”图标 > 脚本编辑器。如果以后要重新打开脚本,请执行相同的操作或从 Apps 脚本信息中心打开脚本。
特殊方法
绑定脚本可以调用独立脚本无法调用的一些方法:
getActiveSpreadsheet()
、getActiveDocument()
、getActivePresentation()
和getActiveForm()
允许绑定脚本引用其父文件,而不引用文件的 ID。getUi
允许绑定的脚本访问其父文件的界面,以添加自定义菜单、对话框和边栏。- 在 Google 表格中,
getActiveSheet()
、getActiveRange()
和getActiveCell()
可让脚本确定用户当前的工作表、选定的单元格范围或选定的单个单元格。setActiveSheet(sheet)
和setActiveRange(range)
允许脚本更改这些选择。 - 在 Google 文档中,
getCursor()
和getSelection()
允许脚本确定用户光标或所选文本的位置。setCursor(position)
和setSelection(range)
允许脚本更改这些位置。
如需了解详情,请参阅扩展 Google 表格的指南或扩展 Google 文档的指南。
自定义菜单、对话框和边栏
绑定脚本可以通过添加自定义菜单和对话框或边栏来自定义 Google 表格、文档和表单。但请注意,脚本只能与已打开文件的当前实例的界面交互。也就是说,绑定到一个文档的脚本不会影响到另一个文档的界面。
附加内容
插件在 Gmail、Google 表格、文档、幻灯片和表单中运行。如果您开发了绑定或独立脚本并希望与全球用户共享,可以使用 Apps 脚本将脚本作为插件发布,以便其他用户从插件商店安装该脚本。
触发器
绑定脚本可以使用简单触发器,例如特殊的 onOpen()
函数(只要拥有编辑权限的用户打开文件,该函数就会自动运行)。与所有类型的脚本一样,它们也可以使用可安装的触发器。
自定义函数
自定义函数是绑定到 Google 表格的脚本中的函数,您可以使用语法 =myFunctionName()
直接从单元格中调用该函数。因此,自定义函数与 Google 表格中的数百个内置函数(如 AVERAGE
或 SUM
)类似,只不过您需要自行定义自定义函数的行为。
访问绑定的脚本
只有有权修改容器的用户才能运行其绑定脚本。仅具有查看权限的协作者无法打开脚本编辑器,但如果他们创建了容器文件的副本,他们便会成为副本的所有者,并可以查看和运行脚本的副本。
如需了解如何共享脚本的容器文件,请参阅共享 Google 云端硬盘中的文件。