Задать вопрос
@etffond

Как написать формулу с отображением даты с соседнем столбце?

если в столбце A из выпадающего списка поставлено значение "доступный", то в столбце B ставилась даты (ставилась только один раз и не изменялась)
а если в столбце A из выпадающего списка выбрали значение "заблокирован" то в столбце С ставилась дата (ставилась только один раз и не изменялась)
  • Вопрос задан
  • 79 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Onskills
    Excel для начинающих
    1 месяц
    Далее
  • Skypro
    Excel для анализа данных за 6 месяцев
    6 месяцев
    Далее
  • GB (GeekBrains)
    Excel + Google-таблицы с нуля до PRO
    4 месяца
    Далее
Решения вопроса 1
ProgrammerForever
@ProgrammerForever Куратор тега Google Apps Script
Учитель, автоэлектрик, программист, музыкант
Используйте onEdit() для отслеживания изменений в ячейках.
Там проверяете тот ли лист, тот ли столбец и т.п. и пишете нужные данные.
Чтобы триггер работал, нужно это сделать полноценным триггером, и переименовать, например в onEditTrigger()
Вот как-то так будет в итоге:
function onEdit(event) {
  //Перенос в архив
  //Возникает при изменении ячейки
  let sheet = event.source.getActiveSheet();//Текущий лист
  let address = event.range.getA1Notation().toUpperCase();//Адрес ячейки
  let row = event.range.getRow();      //Номер строки
  let col = event.range.getColumn();  //Номер столбца
  let newValue = event.value;            //Новое значение
  let oldValue = event.oldValue;        //Старое значение
  
  if (["Лист1","Лист2"].indexOf(sheet.getName())==-1) return;	//Указываем на каких листах должен работать скрипт
  if ([1].indexOf(col)==-1) return;	//Указываем в каких столбцах должен работать скрипт
  //Можно при желании ещё фильтровать по строке/столбцу (row/col), или по старому/новому значению (oldValue/newValue)
  sheet.getRange(row, col+1).setValue(new Date());
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы