He creado el siguiente script:
function onEdit() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sh = ss.getSheetByName("Sheet1"); var cell = sh.getRange("A1:A1"); var cells = sh.getRange("B1:B1"); if( cell.getValue() !="" ) { cells.setValue(new Date()); } if( cell.getValue()==="" ) { cells.clearContent(); } }Este código puede insertar una nueva fecha en la celda B1 cuando se ingresan datos en la celda A1. También puede eliminar la fecha de la celda B1 cuando borro los datos de la celda A1. Pero si quiero cambiar manualmente la fecha en la celda B1 cuando la celda A1 tiene datos ingresados, ¿cómo puedo hacerlo?
Prueba esta función
function onEdit(e) {let cellDate=e.source.getActiveSheet().getRange('B1'); if(e.range.getA1Notation()=='A1'&&e.source.getSheetName()=='Sheet1') {if(e.value==null) cellDate.clearContent(); else cellDate.setValue(new Date());} }Nota: Esta función verifica si la celda cambiada es A1, luego realiza el cambio a B1. Entonces puede cambiar completamente B1 después de haber cambiado A1