SOLVED
Simply I added
dest.getRange(dest.getLastRow(),1).setValue(new Date()).setNumberFormat("yyyy-MM-dd HH:mm");
I'm here again because I would like to add a timestamp in column A.
At the moment the copy starts in column F.
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheetByName('ws1');
var dest = spreadsheet.getSheetByName('ws2');
var startRow = 4;
var lastRow = sheet.getLastRow();
var numRows = lastRow - startRow + 1;
var lastCol = sheet.getLastColumn();
var dataSetValues = sheet.getRange(startRow, 1, numRows, lastCol).getValues();
for (var i = 0; i < numRows; i++){
let aVal = dataSetValues[i][0];
let bVal = dataSetValues[i][1];
let cVal = dataSetValues[i][2];
let dVal = dataSetValues[i][3];
let fVal = dataSetValues[i][5];
let gVal = dataSetValues[i][6];
let hVal = dataSetValues[i][7];
// + other columns
let sum = +fVal + +gVal;
if (sum > 115) {
let row = dataSetValues[i];
var rngDest = dest.getRange(dest.getLastRow() + 1, 6, 1, row.length);
rngDest.setValues([row]);
}
}
I tried this code:
function onEdit() {
var spreadsheet = SpreadsheetApp.getActiveSheet();
if( spreadsheet.getName() == "ws2" ) {
var i = spreadsheet.getActiveCell();
if(i.getColumn() == 6) {
var timestamp = i.offset(0, -5);
if( timestamp.getValue() === '' )
timestamp.setValue(new Date());
}
}
}
Problem:
The timestamp doesn't appear, it works if I type manually in column F. I'd like to avoid using OnEdit script, it's possible to do it directly while copying?
Thanks
Update
I added full main code. I need a timestamp in column A. I would like to avoid using onedit because ws2 is a sheet where I will add other data and therefore it will be editable.
See Question&Answers more detail:os