因为我发现这些术语在其他问题中可以互换使用,所以我的问题是使用术语“电子表格”来指代特定的 Google 表格文档,并使用术语“工作表”来指代该文档中可作为选项卡使用的各个工作表。窗口底部。
我有一个事件管理项目,其中事件由单独的工作表表示。我有一个模板表,当用户创建新事件时,它将以编程方式复制。
在我的模板表上,我设置了一个运行良好的 onEdit 触发器 - 当用户编辑特定单元格时,它会以编程方式影响其他单元格。
但是,当我复制模板时,新工作表似乎不起作用。有趣的是,当我编辑单元格时,执行屏幕显示 onEdit 的新条目,但相关函数并未运行(我在函数的顶层有 Logger 语句,但执行屏幕显示“没有可用的日志”执行。”
我的触发器仅附加到原始工作表吗?如果是这样,为什么执行屏幕报告触发器正在运行?如果它们附加到工作表(而不是电子表格),有没有办法在我复制工作表时复制触发器?
我是一位经验丰富的 JavaScript 开发人员,但对于 Apps 脚本来说还是个新手。如果这一切看起来应该有效,那么我会假设我还有一些其他错误需要追踪。感谢您的帮助!
确保您的 onEdit 函数正在请求活动电子表格,并且该电子表格为您提供了该工作表。
例如
const spreadsheet = SpreadsheetApp.getActive();
const sourceSheet = spreadsheet.getSheetByName("Template");