根据第1列中输入的数字2使此脚本工作的秘密是什么?我绞尽脑汁地寻找if语句的条件例子,以各种方式进行调整等。有人会以为我现在已经弄明白了。但是没有。不是这样的。是时候动用比我更聪明的人了。
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
if (s.getName() == "Sheet6") { //checks that we're on the correct sheet
var r = s.getActiveCell();
if (r.getColumn() == 1 && r.getColumn.getValue() === '2') { //checks the column
var nextCell = r.offset(0, 1);
nextCell.setValue(new Date());
}
}
}
问题在
r.getColumn.getValue()
应该是
r.getValue()
我还建议使用"==="而不是"=="。
最后,你必须确保你的A列被格式化为纯文本,或者在你的if语句中添加一个条件,以防"2"作为一个数字输入。
除了前面的答案,您还可以通过以下方式删除一些API调用:
function onEdit(e) {
if (e.source.getActiveSheet()
.getName() !== "Sheet6" || e.range.columnStart !== 1 || e.value !== '2') return;
e.range.offset(0, 1)
.setValue(new Date());
}