首页 > 解决方案 > SpreadsheetApp.getActive() 在一个 Google Workspace 域上工作,但不在另一个域上

问题描述

我们正在开发一个 Google 表格插件来操作 Google 表格。根据Google 文档,建议使用独立脚本开发附加组件。我们还按照示例脚本创建了一个附加组件。

我们创建的附加组件SpreadsheetApp.getActive()用于访问打开的电子表格。这行代码在我们的 Google Workspace 域和我们的个人 Gmail 帐户 (.gmail.com) 上运行良好。

现在我们试图在不同的域上复制同一个项目,上面提到的代码返回null。这显示了独立应用程序脚本的行为。

我的问题是我们是否需要在 G-Suit 帐户上启用任何管理员设置,才能让插件访问电子表格?

标签: google-apps-scriptgoogle-sheetsgoogle-sheets-apigoogle-workspace

解决方案


这似乎是一个错误!

已经有一份关于谷歌问题跟踪器的报告详细说明了同样的行为:

谷歌似乎确实知道这个问题,但如果它导致问题,您可以通过点击上述页面左上角问题编号旁边的 ☆ 来表明这一点,这让谷歌知道更多的人正在遇到这个问题,因此更有可能被视为更快。

解决方法:

至少现在看来,使用更广泛的电子表格范围比spreadsheets.currentonly可以解决这个问题,所以如果这是一个可能的解决方法,那么这可能会同时解决问题。

此外,根据上述问题报告,这似乎只影响计划发布轨道上的域,而不是快速发布域。您可以在此处查看如何更改您的域的这些设置(必须是域管理员才能执行此操作)


推荐阅读