2014-05-15 83 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

回答

相關問題