我正在尝试按照其他单元格中的数据输入对两个不同的单元格进行时间标记。
这就是我想要的:缓存col中的时间戳,以便col B中的后续修改不会更改时间戳。然后,在col D中加上时间戳,但是要么取决于E或F(或两者)中的条目,还要缓存以保护原始时间戳。
这是我目前的剧本:
function onEdit(event)
{
var timezone = “PST8PDT”;
var timestamp_format = “HH:mm”;
var updateColName = “Trip Origin”;
var timeStampColName = “P/U Time”;
var updateColName2 = “Trip Destination”;
var timeStampColName2 = “Drop Time” // variable for second timestamp
var sheet = event.source.getActiveSheet();
var actRng = event.source.getActiveRange();
var editColumn = actRng.getColumn();
var index = actRng.getRowIndex();
var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues();
var dateCol = headers[0].indexOf(timeStampColName);
var dateCol2 = headers[0].indexOf(timeStampColName2); // get header for second timestamp.
var updateCol = headers[0].indexOf(updateColName); updateCol = updateCol+1;
if (dateCol > -1 && index > 1 && editColumn == updateCol) {
var cell = sheet.getRange(index, dateCol + 1);
var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
cell.setValue(date);
}
// extra code for second timestamp
if (dateCol2 > -1 && index > 1) {
var cell = sheet.getRange(index, dateCol2 + 1);
var date = Utilities.formatDate(new Date(), timezone, timestamp_format);
cell.setValue(date);
}
}
以下是工作表的样本:
https://docs.google.com/spreadsheets/d/1P38l4FSmbmkgoiAqowFRq7PljIjHzMOSDApZXU91zFQ/edit?usp=sharing
在旁注中,当我保存当前脚本时,我有一个红色通知 - 它与" var timezone":非法字符相关。 (第5行,文件"代码")