gpt4 book ai didi

google-apps-script - Google 表格 - 有没有办法将用户信息从 "show edit history"提取到单元格?

转载 作者:行者123 更新时间:2023-12-04 17:32:21 24 4
gpt4 key购买 nike

我正在尝试在特定列中为每一行记录使用“显示编辑历史记录”选项(通过右键单击单元格)时显示的用户信息。

更具体地说 - 对于给定的行,如果 G 列中的单元格最后由我修改 - B 列中的单元格应显示“Yaniv A”或“yaniva@emaildomain.com”。当然,这应该适用于任何其他编辑器的相同方式。每当修改 G 列中的相应单元格时,新信息应替换 B 列中的任何旧信息。

最佳答案

在 Apps 脚本中,您可以设置 onEdit检索编辑器的用户名和进行更改的单元格的触发器;但您必须记住,可能存在无法检索用户名的情况(主要是如果用户未接受脚本范围),您可以在 getActiveUser 上阅读有关这些情况的更多信息。文档。

您可以使用以下功能实现您的要求。它将使用 event object检查是否在 G 列上进行了更改,如果是,则用户的电子邮件(或 Unknown 如果范围未被接受)将写入相同的 B 列行。

function onEdit(e) {
var range = e.range;
var editor = e.user.getEmail();
if (editor == '' || editor == null) {
editor = 'Unknown';
}
if (range.getA1Notation().search('G') != -1) {
range.offset(0, -5).setValue(editor);
};
}

保存此函数后,您必须创建一个 installable trigger .为此,请转到 Edit 🡆 Current project's triggers。之后,点击 + Add Trigger 并填写以下设置:

  • 选择要运行的函数:onEdit
  • 选择要运行的部署:负责人
  • 选择事件源:来自电子表格
  • 选择事件类型:编辑时
  • 失败通知设置:随心所欲

保存触发器后,您可以通过自己修改 G 列中的单元格来测试函数。请不要犹豫,要求对我的答案或代码本身进行任何澄清。

关于google-apps-script - Google 表格 - 有没有办法将用户信息从 "show edit history"提取到单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58363986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com