3

在我的 Google 电子表格中,我记录了每行中单元格的最后修改。

当我从我的帐户编辑单元格时,它会记录我的用户(作为电子邮件),当有人从其他帐户进行编辑时,它会显示空的用户名或?.

这是谷歌脚本。

function onEdit(e) {
...
  ss.getRange(r.getRow(), ss.getLastColumn()).setValue(e.user.getEmail() + " " + date + " \"" + column_name + "\"");
...
}

我编辑时的结果:

*******@gmail.com 11:09 [08-11-2012] "SOME VALUE"

其他人编辑时的结果:

? 09:54 [08-11-2012] "SOME VALUE"
4

1 回答 1

3

该文档似乎没有直接解决这个问题。从理论上讲,该事件应该返回电子表格的所有者(如果您尝试创建审计跟踪,这可能不是您想要的)。

getActiveUser 根据此处描述中设置的先例,这似乎是一种深思熟虑的安全策略。我想您可以尝试通过 提供的各种方式访问​​用户Session,看看您是否有更好的运气。

于 2012-11-08T17:41:14.463 回答