当第一次编辑后编辑列时如何停止时间戳更新
问题描述:
我有一个代码在编辑列1时放入时间戳,然后在另一列中输入单词'收集'时输入第二个时间戳。然后,我花费时间收集并使用这些数据。但是,如果有人再次编辑第1列,它会更新时间戳记,因此我正在查找脚本以允许它仅在第一次编辑时执行此操作。这是我目前的剧本;当第一次编辑后编辑列时如何停止时间戳更新
function onEdit(e) {
var sheet = SpreadsheetApp.getActiveSheet();
if(sheet.getName() == "CC sheet") {
//Update timestamp when changed to collected
var range = sheet.getActiveCell();
Logger.log(range.getColumn())
if(range.getColumn() == 7.0) { //if we are in the status column...
var nextCell = range.offset(0, 2);
if(range.getValue() == 'Collected')
if(nextCell.getValue() === '') //is empty?
nextCell.setValue(new Date());
}
//end
}
if(e.source.getActiveSheet().getName() !== 'CC sheet' || e.range.columnStart !== 1) return;
e.range.offset(0, 5).setValue(e.value ? new Date() : null);
}
这是我需要改变的最低位,只在第一次编辑时更新。任何帮助,将不胜感激。
答
与这一个替换最后一行或代码:
if (e.range.offset(0, 5).getValue() === '') {
e.range.offset(0, 5).setValue(e.value ? new Date() : null);
}
这是相同的“是空的?”如您在脚本的第一部分中所述检查。
这完美谢谢我所需要的。 –
谢谢,请勾选正确答案。 –