如何使 onEdit 触发器在边框样式更改时不触发?



我注意到弄乱文本样式和格式不会使onEdit触发器触发。 然而,弄乱细胞的边界会。

为什么?是否有一种聪明的解决方法可以在实际内容更改时触发 onEdit 触发器?

谢谢!

如果编辑了文本样式以及编辑了格式,则onEdit触发器将触发。如果正在编辑单元格边框,则相同的行为也是如此。基本上,如果正在编辑工作表,则onEdit触发器将起作用。

为了使它严格适用于值更改,您可以尝试以下代码片段:

function onEdit(e){
var oldval = e.oldValue;
var newval = e.range.getValue();
if (oldval != newval) 
console.log("a change has been made to the value")
else 
console.log("a change hasn't been made to the value");
}

另外,请注意,如此处所述,oldValue仅适用于一个单元格 - 因此,如果您计划同时编辑多个单元格并检查其值,则无法正常工作。

参考

  • 应用脚本事件对象。

最新更新