启用触发器 onEdit 启动功能两次,未启用停止模态对话框显示

enabled trigger onEdit launches functions twice, not enabled stops modal dialog to show up

我有一个具有 onEdit(e) 功能的 Apps 脚本。该函数根据现有数据和新数据调用其他一些函数。在某些情况下,需要显示 showModalDialog。如果我通过触发器 onEdit 启用函数 onEdit(e),它会启动某些函数两次(例如插入行和执行计算)。如果我从触发器列表中删除该触发器,则无法显示 showModalDialog 并出现错误 You do not have permission to call showModalDialog at showDialog(Code:82) at onEdit(Code:1270)

想法是让 showModalDialog 在需要时出现,并在用户编辑数据时仅启动所有其他功能一次。 如果您能帮我解决问题,我将不胜感激。

一个名为 onEdit(e) 的函数本身已经是一个触发器:这称为 simple trigger. To show the showModalDialog you will need to create an installable 触发器。如果您在 onEdit 函数上执行此操作,您最终可能会为同一函数得到两个触发器(一个简单,一个已安装)。 IMO,最好重命名函数,然后在该函数上使用可安装的 (onEdit) 触发器。