2017-07-07 69 views
0

我有这个在我的电子表格谷歌Apps脚本:谷歌Apps脚本错误:您没有权限拨打newTrigger

function onEdit(e) { 
    var row = e.range.getRow(); 
    if (row == 1) { 
    return; 
    } 
    var email = Session.getActiveUser().getEmail(); 
    email = email.substring(0, email.indexOf('@')); 
    SpreadsheetApp.getActiveSheet().getRange(row, 2).setValue(email); 
    SpreadsheetApp.getActiveSheet().getRange(row, 3).setValue(new Date()); 
} 

function onOpen(e) { 
    var ss = SpreadsheetApp.getActive(); 
    ScriptApp.newTrigger('onEdit') 
     .forSpreadsheet(ss) 
     .onEdit() 
     .create(); 
} 

这将导致此错误:

Google Apps Script: You do not have permission to call newTrigger

显然,这个脚本已经运行了一段时间,现在没有。我想象在API中发生的一些变化导致了这种情况?

回答

1

您应该考虑在onOpen函数之外创建触发器,否则每次在浏览器中加载Google表单时都会运行它。