google-apps-script - 重新计算工作表后是否正在执行 Google Sheet onEdit 触发器
问题描述
我有一个带有 onEdit 触发器的电子表格。A1 被其他单元格使用,例如 B1。
触发器“监听”A1 修改,然后获取B1 新值来执行其工作。
问题是它保证B1onEdit
在被解雇时已经被重新计算过吗?例如:
单元格B1包含公式=A1+1
现在 1 被输入到A1
function onEdit(e){
var changeRng = e.range;
if (changeRng.getA1Notation() == "A1") {
//Read value from B2
var b1 = SpreadsheetApp.getActive().getActiveSheet().getRange(1, 2).getValue();
}
}
变量b1
保证是2吗?
解决方案
IfonEdit()
由编辑触发,则在触发之前A1
没有B1
完成重新计算的保证onEdit()
,尤其是在重新计算B1
时间密集的情况下。
我建议您在onEdit
函数开始时合并一个Utilities.sleep()
调用,以便在B1
足够的时间内重新计算该值。
推荐阅读
- python - 有没有办法以 int 格式逐字符读取文件
- reporting-services - 独立安装 SSRS 2019
- html - NodeJS:如何编写最简单的 HTML+CSS+img 服务器?
- javascript - 如何使用 fs.writeFile 格式化 csv 文件
- woocommerce - 防止订单混合某些类别的产品
- python - Python:以科学计数法打印数字列表
- python - 加载可投票后使用 df.loc(panda,已安装最新版本)的问题
- android - 在作为参数的函数中操作布局的问题;view.editText 不能为空
- javascript - 如何使用 E-308 作为算法将 SRM 转换为 L*a*b*?
- python - 在统计上成功的训练之后,结果并没有通过实时摄像机反映出来。我该如何解决这个问题?