在谷歌应用程序脚本中,当我更改单元格的背景颜色时,如何自动运行脚本? 当我更改单元格的背景颜色时,电子表格会自动保存,并且还会显示上次编辑的时间,但是如果我尝试在 onEdit 函数上使用此事件来运行脚本,它不会识别该事件并且什么也没做。谢谢
onEdit 将在任何单元格值更改时触发,而不是在任何格式更改时触发。 您必须在脚本中放置规则来更改背景颜色,假设规则基于工作表中已有的单元格值。
恐怕您必须使用“技巧”来管理此问题,因为确实没有自动触发背景颜色变化。
只是一个建议:如果您的电子表格不太大,您可以简单地记住之前存储在脚本属性中的字符串中的整个颜色描述,然后根据计时器触发器检查是否有更改。
如果您可以接受此解决方案(计时器触发而不是立即反应),请尝试一下...
使用这个变量例如:
var backGroundString = SpreadsheetApp.getActiveSheet().getDataRange().getBackgrounds().toString()
并将其与 scriptProperties 中存储的相同值进行比较,如果不同,则触发您的事件...
我知道这有点笨拙,但现在我看不到其他简单的方法来获得你想要的东西。
您可以添加一些条件,使其仅在某些时刻或电子表格打开时起作用...