Как настроить подставление текущей даты, при заполнении соседней ячейки?
Google docs Скрипт автоматического заполнения ячеек
Ниже представлен скрипт автоматического заполнения ячеек первого и второго столбца датой и временем, при изменении ячейки из третьего столбца.
Работает скрипт так:
если обнаружена правка в документе,
проверяем, изменена ли ячейка из третьего столбца и это изменение произведено на листе с названием "Лист1", если да,
проверяем, не пустая ли ячейка из первого столбца (если не пустая, значит дата была уже ранее проставлена, соответственно время и дату не меняем).
если пуста, то
в ячейку первого столбца добавляем дату в формате: год.месяц.день
в ячейку второго столбца добавляем время GMT+03 в формате: час:минутыfunction onEdit(e) {
var sheet = e.source.getActiveSheet();
var idCol = e.range.getColumn();
var idRow = e.range.getRow();
if ( idCol == 3 && sheet.getName() =='Лист1' ) {
var Value = e.range.offset(0, -2).getValues(); // Смотрим что в ячейке с лева на 2
if ( Value == "" ) {

var vartoday = getDate();
var varnow = getTime();


sheet.getRange(idRow, 1).setValue( vartoday );
sheet.getRange(idRow, 2).setValue(varnow);
}
}
}

// Returns YYYYMMDD-formatted date.
function getDate() {
var today = new Date();
today.setDate(today.getDate());
//return Utilities.formatDate(today, 'PST', 'yyyy.MM.dd');
return Utilities.formatDate(today, 'GMT+03:00', 'yyyy.MM.dd');
}

function getTime() {
var today = new Date();
today.setDate(today.getDate());
//return Utilities.formatDate(today, 'PST', 'yyyy.MM.dd');
return Utilities.formatDate(today, 'GMT+03:00', 'HH:mm');
}
Нашёл тут
А также вот
Использую формулу:=IF(K5="sample";now();)
Дату вставляет как только в ячейке К5 появляется нужный текст. Но - проблема!
Если размножаю формулу по колонке и в ячейках К6, К7, ..., появляется необходимый текст - все даты сразу синхронизируются в текущую дату.
Как исправить, чтобы соседние даты оставались прежними?