2014-05-15 41 views
0

似乎如果我在新的Google表格中创建了一个打开或编辑触发器,它只会为创建触发器的用户运行它。我不会在旧的Google工作表中遇到此问题。以下是我所遵循的步骤:打开/编辑触发器仅适用于新Google表格中的创建者

  1. 创建一个Google Spreadsheet(新版本)。

  2. 创建一个新的脚本函数,例如创建一个自定义菜单的函数。

  3. 手动创建触发器,以便在打开电子表格时执行此功能。 (我认为这个问题仍然有自动触发,如onOpen()onEdit()的功能出现。

  4. 现在打开电子表格作为同一个用户。请注意,自定义菜单会显示正确。

  5. 在旧版Google表格中,这位新用户会看到自定义菜单,但该功能似乎甚至不会尝试在新的Google表格中执行,即使我使用确切相同的代码。

下面是一些示例代码,只是为了确认我没有做错任何事的脚本方面:

function createMenu() { 
    var menuItems = [ 
    {name: "Test Menu Item", functionName: "test"} 
    ]; 
    SpreadsheetApp.getActive().addMenu("Test Menu", menuItems); 
} 

function test(){ 

} 

注:我已经试过这与其他部分的代码也一样,所以我m几乎肯定,这不是语法或类似的问题。当我手动运行它作为第二个用户时,它创建菜单就好了。问题在于新工作表中的“开启”触发器无法正常工作。

我已经在两个不同的Google帐户域(或任何这些组织的东西被称为)重现了这一点。我也在多张电子表格中转载了它。让我知道你是否需要更多细节。

编辑:Google确认这是将客户端用户界面从打开/编辑触发器更改的问题。如果您希望获得修正或希望获得更新,请为其解决问题: https://code.google.com/p/google-apps-script-issues/issues/detail?id=4021&thanks=4021&ts=1400503046

+0

不要将最终编辑添加到您的问题中,而是将相同信息作为答案发布。你被允许(鼓励,甚至)回答你自己的问题......它会帮助别人。 – Mogsdad

回答

相关问题