Задача - автоматически проставлять время в в ячейке при изменении соседней ячейки. Есть скрипт, работает корректно, но с одним набором столбцов, так как навыков в написании - 0 не смог корректно дублировать это на еще ряд столбцов. 5 - 7, 8 - 10, 11 - 13, 14 - 16, 17 - 19, 20 - 22, 23 - 25, 26 - 28, 29 - 31, 32 - 34
function onEdit(e) {
var sheet = e.source.getActiveSheet();
var idCol = e.range.getColumn();
var idRow = e.range.getRow();
if ( sheet.getName() == 'Расход 09.19' || sheet.getName() == 'Расход 10.19' || sheet.getName() == 'Расход 11.19' || sheet.getName() == 'Расход 12.19' || sheet.getName() == 'Расход 01.20' || sheet.getName() == 'Расход 02.20' ){ //на каком листе
var tcol = 5; //столбец который нами меняется
var toffset = 2; //смотрим что в ближайшем столбце справа + слева -
var trange = 7; //где вписываем
}
if ( idCol == tcol) {// проверка столбца который нами меняется
var Value = e.range.offset(0, toffset).getValues(); // проверяем ячеку от вказаного выше сролбца
if ( Value == "" ) {
var vartoday = getTime();
sheet.getRange(idRow, trange).setValue( vartoday ); //где вписываем
}
}
}
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');
}