Ok, aquí hay una versión modificada del código en mi respuesta anterior:
function onEdit(e) {
// Your sheet params
var sheetName = "MySheet";
var dateModifiedColumnIndex = 2;
var dateModifiedColumnLetter = 'B';
var range = e.range; // range just edited
var sheet = range.getSheet();
if (sheet.getName() !== sheetName) {
return;
}
// If the column isn't our modified date column
if (range.getColumn() != dateModifiedColumnIndex) {
var row = range.getRow();
var time = new Date();
time = Utilities.formatDate(time, "GMT-08:00", "MM/dd/yy, hh:mm:ss");
var dateModifiedRange = sheet.getRange(dateModifiedColumnLetter + row.toString());
dateModifiedRange.setValue(time);
};
};
Lo que esto hace es tomar la fila de cualquier celda que se cambie y asignar una marca de tiempo a la segunda columna de esa fila en particular.
Para implementar, todo lo que necesita hacer es ir a la hoja de cálculo y hacer clic en Tools
> Script Editor
. En la página del editor resultante, simplemente pegue esto allí. Dado que esta es una onEdit()
función, debería funcionar sin tener que agregar nada más a las celdas de su hoja de cálculo, simplemente péguela en el editor y guárdela.
Para la marca de tiempo, configuré el formato en MM / dd / aa y dejé la hora. Si desea cambiarlo, simplemente puede cambiar el uso de Utilities.formatDate
.