如何允许受保护的Google表格中的功能?

问题描述:

我正在使用下面的代码来获取列B中的最后更新日期。现在,当我保护列B(因为我不希望其他用户进行任何更改)并与其他用户共享此工作表时,更新不是发生。如何允许受保护的Google表格中的功能?

我将不胜感激您的帮助。

function onEdit() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheetName = "Sheet1"; 
    var s = SpreadsheetApp.getActiveSheet(); 
    if (s.getName() !== sheetName) return; 
    var r = s.getActiveCell(); 
    if(r.getColumn() != 2) { //checks the column 
    var row = r.getRow(); 
    var time = new Date(); 
    time = Utilities.formatDate(time, "GMT+5", "dd/MM/yy, hh:mm:ss"); 
    SpreadsheetApp.getActiveSheet().getRange('B' + row.toString()).setValue(time); 
    }; 
}; 

而不是使用简单的触发器使用可安装的触发器。

以上是因为简单的触发器只能执行不需要授权的任务。