Добавление метки времени в Google Sheet при изменении результата в ячейке, использующей INDEX & MATCH - PullRequest
1 голос
/ 16 апреля 2020

Я хочу добавить метку времени, когда результат ячейки, который содержит INDEX и MATCH формул (=INDEX('Sheet2'!$C$9:$Q$9,MATCH(I156,'Sheet2'!$C$5:$Q$5,1)), изменится. Этот форум предоставляет числовую категорию / диапазон для моих разных записей данных (1, 2, 3 и c) в зависимости от числа, введенного в столбце I.

Я запустил сценарий ниже, но он работает, только если я редактирую саму ячейку, а не если результат формулы изменяется в зависимости от значения столбца I.

Я не хочу связать скрипт с ячейками в столбце I, которые я непосредственно редактирую, так как я хочу отслеживать дату, когда мои данные перемещаются из одной категории в другую, и данные в столбце I могут изменяться несколько раз, прежде чем он переместится в следующая категория.

Если у кого-то есть предложения или ссылки на статьи, которые могут помочь (я полный новичок ) - это было бы здорово!

Спасибо,

R


  var row = e.range.getRow();
  var col = e.range.getColumn();

  if (col === 5 && e.source.getActiveSheet().getName() === "Master Test Sheet - All Stores") {
  e.source.getActiveSheet().getRange(row,1).setValue(new Date());
    }
}

1 Ответ

0 голосов
/ 16 апреля 2020

onEdit не отслеживает изменения, выполненные по формулам

  • устанавливаемый триггер onChange, который может отслеживать НЕКОТОРЫЕ обновления формул
  • INDEX и MATCH, к сожалению, не являются некоторыми из них, однако IMPORTRANGE - это
  • Таким образом, вы можете реализовать следующий обходной путь:
    • Создайте новую электронную таблицу и импортируйте ячейку с INDEX и MATCH формула из вашей текущей электронной таблицы с помощью =IMPORTRANGE
    • Присоедините к новой электронной таблице скрипт и привяжите его к onChange триггеру
    • Укажите в скрипте все, что вы хотите, чтобы происходило когда результат вашей формулы обновляется
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...