似乎如果我在新的Google表格中创建一个打开或编辑触发器,它只会为创建触发器的用户运行它 . 我在旧的Google表格中没有遇到过这个问题 . 以下是我要遵循的步骤:
-
创建Google电子表格(新版本) .
-
创建新的脚本功能,例如创建自定义菜单的功能 .
-
手动创建触发器,以便在打开电子表格时执行此功能 . (我认为问题仍然出现在具有自动触发功能的函数中,例如
onOpen()
和onEdit()
. -
现在以同一用户身份打开电子表格 . 请注意,自定义菜单将正确显示 .
-
以具有电子表格编辑权限的其他用户身份打开电子表格 . 在旧的Google表格中,这位新用户会看到自定义菜单 . 但是,即使我使用完全相同的代码,该功能似乎甚至不会尝试在新的Google表格中执行 .
这是一些示例代码,只是为了确认我在脚本方面没有做错任何事情:
function createMenu() {
var menuItems = [
{name: "Test Menu Item", functionName: "test"}
];
SpreadsheetApp.getActive().addMenu("Test Menu", menuItems);
}
function test(){
}
NOTE: 我've tried this with other pieces of code, too, so I'几乎是正面的's not an issue with syntax or anything like that. When I run it MANUALLY as the second user, it creates the menu just fine. The issue is that the Open trigger isn' t在新工作表中正常工作 .
我已经在两个不同的Google帐户域中重现了这一点(或者不管是那些组织的东西) . 我也在多个电子表格上复制了它 . 如果您需要更多详细信息,请与我们联系 .
EDIT :Google确认从打开/编辑触发器更改客户端UI是一个问题 . 如果您希望修复该问题或希望收到更新,请为该问题加注星标:https://code.google.com/p/google-apps-script-issues/issues/detail?id=4021&thanks=4021&ts=1400503046
1 回答
Google确认从打开/编辑触发器更改客户端UI是一个问题 . 如果您希望修复该问题或希望收到更新,请为该问题加注星标:https://code.google.com/p/google-apps-script-issues/issues/detail?id=4021&thanks=4021&ts=1400503046