google-apps-script - 尽管满足脚本条件,但我的 onEdit Timestamp 脚本无法在某些行上运行
问题描述
我制作了一张使用下面脚本的表格。在某些行上,它可以工作,但在某些行上,它不起作用。
当我调查时,它不适用于另一列上标记为是(通过公式)的所有行,但该列甚至不是脚本运行操作的标准的一部分。
这个脚本以前可以工作,甚至可以在其他工作表上工作,但是现在突然不工作了。有小费吗?我不是程序员,我只能从本网站或 youtube 或其他在线可用的演练视频中获得这些想法。
var DATETIMELOCATION = [0,1]
var SHEETNAME = '[3] Worksheet'
function onEdit(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
if( sheet.getSheetName() == SHEETNAME ) {
var selectedCell = ss.getActiveCell();
if( selectedCell.getColumn() == COLUMNTOCHECK) {
var dateTimeCell = selectedCell.offset(DATETIMELOCATION[0],DATETIMELOCATION[1]);
if (dateTimeCell.isBlank()) {dateTimeCell.setValue(new Date()); }
}
}
}```
解决方案
您这么说it doesn't work on all the rows marked yes (via formula)
是正常行为,因为 onEdit 触发器仅在用户编辑时触发。
推荐阅读
- postgresql - Postgres 12 MATERIALIZED CTE 更快
- xml - XSLT - foreach 在同一行的结果
- javascript - 在 JS ES6 类中强制使用 setter 而不是直接赋值
- javascript - CryptoJs - 通过 PHP 和 Javascript 加密/解密 - 简单输出加密字符串
- r - R:在名称取决于输入的函数中制作数据框
- date - 如何让 Word 2007 给出正确的结束日期?
- angular - BehaviorSubject 没有发出角度值
- javascript - 解析错误的问题:意外的令牌
- java - 在 Java 中缓存地图
- postgresql - Postgresql 不选择行分组