google-apps-script - 更改时自动更新的自定义谷歌表格功能不会在其他人编辑时更改
问题描述
我有一个自定义函数,当对谷歌电子表格进行更改时会自动更新,但是当其他一些用户编辑工作表时,该功能对他们不起作用,我怎样才能让它为使用工作表的任何人更新。
使用此功能自动更新:
function onEdit(e) {
SpreadsheetApp.getActiveSheet().getRange('Z1').setValue(Math.random());
}
然后传递Z1的参数。
解决方案
解释:
只需几条注释即可确保我们在同一页面上。
潜在问题:
确保其他用户对目标单元格具有编辑权限。如果不允许他们编辑可能是电子表格文件中的任何工作表
Z1
中的单元格,则该脚本将不适用于他们。您可以授予他们访问权限,或者在您可以授予他们访问权限时使脚本仅在特定工作表下工作。activeSheet
一些用户在尝试直接链接活动方法时有时会遇到问题。请参阅此处和此处的参考链接,尽管我无法重现该问题,但这可能是您的情况的原因。
潜在解决方案:
请注意第一个问题。
关于第二个问题,修改你的代码如下:
function onEdit(e) {
const active_sheet = e.range.getSheet();
active_sheet.getRange('Z1').setValue(Math.random());
}
无论如何,这是使用onEdit
触发器的推荐方法,因为您应该利用事件对象。
推荐阅读
- postgresql - Prisma 如何查看数据库
- makefile - make: *** 没有指定目标,也没有找到 makefile。停止
- jquery - 在剑道网格中 - 编辑选项如何隐藏/显示保存按钮如果没有更改或一些更改然后显示
- ios - 如何检测 mapbox 地图中缩放级别的变化?
- sql - SQL Server FOR DELETE 触发器不适用于具有级联键的内部联接
- php - 具有开始和结束日期的时间段数组(按范围)
- mongodb - Monk - 为什么我的更新有时只有效?
- python - 添加 order_by 时 Django 管理员性能糟糕的 get_form 查询集过滤器
- eclipse - 为 JSF 下载 Mojarra 库时,在 Eclipse 中显示错误“zip 文件为空”
- rust - 如何在泛型类型上调用关联函数?