我正尝试使用两个不同的IF语句在编辑特定列后立即获得不同列的时间戳。例如,在第1列中进行任何编辑时,时间戳记应出现在第3列中,而在第10列中进行编辑则应导致时间戳记在第13列中。
但是发生的事情是,一旦第1列被编辑,两个时间戳都将更新。
代码如下:
function onEdit(){
var spreadsheet=SpreadsheetApp.getActiveSpreadsheet();
var currentSheet=spreadsheet.getActiveSheet();
var actRange=currentSheet.getActiveRange();
var rowIndex=actRange.getRowIndex();
var colIndex=actRange.getColumn();
if((colIndex=1) && (rowIndex>1)){
currentSheet.getRange(rowIndex, 3).setValue(new Date());
}
if((colIndex=10) && (rowIndex>1)){
currentSheet.getRange(rowIndex, 13).setValue(new Date());
}
}
答案 0 :(得分:0)
=
是分配运算符,不是比较运算符。
尝试一下:
function onEdit(e){
if((e.range.columnStart==1 || e.range.columnStart==10) && (e.range.rowStart>1)){
e.range.offset(0,3).setValue(new Date());
}
}