Я пытаюсь отобразить отметку времени, когда редактируется конкретная ячейка (которая представляет собой раскрывающийся список, объединенный по горизонтали в нескольких столбцах), но не смогла заставить ее работать.
Вот что у меня есть:
function onEdit(e) {
addTimestamp(e);
}
function addTimestamp(e){
//variable
var startRow = 6;
var targetColumn = 7;
//get modified row and column
var row = e.range.getRow();
var col = e.range.getColumn();
if (col === targetColumn && row >= startRow){
var currentDate = new Date();
e.sourcegetActiveSheet().getRange(row,12).setValue(currentDate);
}
}
Вот пример тестового листа
Я также хотел бы иметь возможность пропускать 4 вкладки, но применять к остальным. Первоначально я пытался использовать
e.sourcegetActiveSheet().getName() != "*tab I wanna exclude*" &&
Внутри IF, но не знаю, работает ли это, так как я не могу заставить полный скрипт работать должным образом.
Спасибо!
Вы написали свой код, в котором неправильно получаете активный лист. В вашем коде вы помещаете e.sourcegetActiveSheet(), но это должно быть e.source.getActiveSheet().
Пожалуйста, замените указанную строку кода кодом ниже. Я проверил его на своем конце, и он работает правильно.
e.source.getActiveSheet().getRange(row,13).setValue(currentDate);
После этого вы можете проверить свой код на пропуск вкладок.
Звучит здорово! Буду признателен, если вы примете этот ответ, чтобы другие знали, какой из них решил вашу проблему. Удачного кодирования! :)
Круто, это сработало! Часть пропуска вкладок теперь тоже работает, спасибо!