Apps脚本设置ActiveUser和时间戳

时间:2017-07-25 21:14:52

标签: google-apps-script

请帮助在N列中设置活动用户。每当更新行中的单元格时,此脚本将为列M添加时间戳。但是,活动用户的N列没有任何更新。

function onEdit() {
 var s = SpreadsheetApp.getActiveSheet();
 if( s.getName() == "Log" ) { //checks that we're on the correct 
 sheet

 var r = s.getActiveCell();
 var user = Session.getActiveUser().getEmail();

 if( r.getColumn() != 13 ) { //checks the column
 var row = r.getRow();
 var time = new Date();
 time = Utilities.formatDate(time, "GMT-07:00", "yyyy-MM-dd, hh:mm:ss");
 SpreadsheetApp.getActiveSheet().getRange('M' + row.toString()).setValue(time);
 SpreadsheetApp.getActiveSheet().getRange("N" + row.toString()).setValue(user);
     }
   };
 };

我是否错误地使用了setValue(用户)?

1 个答案:

答案 0 :(得分:0)

您对setValue()的调用看起来很好。您可能遇到授权问题。

你能否在onEdit()触发器之外成功运行相同的代码?

可以在onEdit触发器内执行的操作有限制。见https://developers.google.com/apps-script/guides/triggers/