我希望仅当J2:K2
中的值发生变化时才能清除单元格I1
。
到目前为止,我有以下脚本:
function onEdit(e) {
if (e.range.getA1Notation() === 'i1') {
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('sheet1').getRange('j2:k2').clear()
}
}
我认为onEdit
仅在I1
发生更改时才会启动,但当我尝试在J2:K2
或{{1}中写入值时,范围J2
会一直被清除}。有人可以帮助我吗?
答案 0 :(得分:3)
简单修复。这对我有用:
function onEdit(e) {
if (e.range.getA1Notation() === 'I1') {
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('sheet1').getRange('j2:k2').clear();
}
}
问题是您的if
声明条件未得到满足。这是因为.getA1Notation()
返回string description of the range,需要准确。用i1
替换I1
可以解决问题。
希望这有帮助!