Google apps script 获取谷歌电子表格中的编辑器名称并将其写入单元格
有没有办法让OneEdit函数在A2发生更改时获取编辑器名称并将其写入B2 (例如,我的google帐户名为“Thomas g.”,因此应将其写入B2。)Google apps script 获取谷歌电子表格中的编辑器名称并将其写入单元格,google-apps-script,google-sheets,acl,Google Apps Script,Google Sheets,Acl,有没有办法让OneEdit函数在A2发生更改时获取编辑器名称并将其写入B2 (例如,我的google帐户名为“Thomas g.”,因此应将其写入B2。) 可能?重要注意事项:以下代码通常仅在脚本的所有者/发布者和访问工作表的用户属于同一Google Apps域时有效。它不适用于非应用程序用户 可以使用工作表中的以下OneEdit()方法执行此操作: function onEdit(e) { var editedRange = e.range; if ( editedRange.get
可能?重要注意事项:以下代码通常仅在脚本的所有者/发布者和访问工作表的用户属于同一Google Apps域时有效。它不适用于非应用程序用户 可以使用工作表中的以下OneEdit()方法执行此操作:
function onEdit(e) {
var editedRange = e.range;
if ( editedRange.getColumn()==1 ) { // if column A was edited
var u = Session.getActiveUser().getEmail();
editedRange.offset(0, 1).setValue(u); // write user's email to corresponding row in column B
}
};
注意:这将要求用户授权脚本访问他们在谷歌上的数据(以了解用户的电子邮件)。在我的链接文档中尝试了这一点,但没有任何结果。。。对你有用吗?此外,如果可能的话,我希望收到的是姓名,而不是电子邮件…@TobiasH我已经编辑了我的答案,因为显然,e.user在默认情况下没有填充,也不会触发用户的正确授权。将代码改为使用会话服务。您是否使用了更新后的代码?Hmmm进一步测试表明,它仍然不会触发非所有者帐户的正确授权。让我再修改一下……是的,我需要先从脚本运行它,然后它要求我授权,然后它工作了。然而,就我而言,这并不太实际。我想将该电子表格嵌入到网站中,并为特定用户提供该电子表格的链接以更新状态。现在,我需要告诉每个人首先打开脚本编辑器,运行脚本,然后进行授权。有没有办法至少让他们在不去脚本编辑器的情况下进行授权?更新:厄运!太好了,谢谢!:)是的,这正是我现在想要实现的——因此,当用户打开工作表时,会自动要求用户进行授权。默认情况下,简单触发器(onOpen(),onEdit())不会触发此操作。正在寻找一份工作。。。