Мониторинг ячейки. Как сделать скрипт мониторинга изменения в ячейке?
Доброго!
Есть потребность в создании скрипта:
- назначить в ячейку А (группу ячеек, столбец) формулу которая будет вычислять разницу между только что введенным значением и предыдущим в другой ячейке В.
- заставить ячейку А мониторить состояние ячейки В с определенным интервалом времени.
Дополнительно:
На днях делал подобную задачу. Посмотртеь видео и пример можно тут https://vk.com/contributorpw?w=wall-175699410_286
Ответы:
Апп Скртипт+тригер по времени, не похрдит? Или я не понял задачи или это не сложный вопрос, а неверно сформулиронный, вы лучше визуально поуажите, что вам нужно.
Смотрите в сторону onEdit(event) - событие изменения ячеек. Вот заготовка кода:
function onEdit(event) { //Возникает при изменении ячейки var ss = event.source.getActiveSheet();//Текущий лист var address = event.range.getA1Notation().toUpperCase();//Адрес ячейки var row = event.range.getRow(); //Номер строки var col = event.range.getColumn(); //Номер столбца var newValue = event.value; //Новое значение var oldValue = event.oldValue; //Старое значение if (["Лист1","Лист2"].indexOf(ss.getName())==-1) return; //Указываем на каких листах должен работать скрипт //Что-то делаем... }; |
function onEdit(event) { //Возникает при изменении ячейки var ss = event.source.getActiveSheet();//Текущий лист var address = event.range.getA1Notation().toUpperCase();//Адрес ячейки var row = event.range.getRow(); //Номер строки var col = event.range.getColumn(); //Номер столбца var newValue = event.value; //Новое значение var oldValue = event.oldValue; //Старое значение if (["Лист1","Лист2"].indexOf(ss.getName())==-1) return; //Указываем на каких листах должен работать скрипт //Что-то делаем... };
Интервал времени можно задать в триггерах проекта, навесив триггер по времени на любую функцию.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для создания скрипта мониторинга изменения в ячейке, вы можете воспользоваться JavaScript и событием `onchange`. Вот пример кода на JavaScript, который будет отслеживать изменения в ячейке:
// Получаем элемент ячейки var cell = document.getElementById('myCell'); // Сохраняем начальное значение ячейки var previousValue = cell.innerHTML; // Добавляем обработчик события изменения cell.oninput = function() { if (cell.innerHTML !== previousValue) { // Если значение изменилось, выполняем необходимые действия console.log('Значение ячейки изменилось!'); // Обновляем сохраненное значение previousValue = cell.innerHTML; } };
В данном коде мы сначала получаем элемент ячейки по его id, затем сохраняем начальное значение ячейки. Далее мы добавляем обработчик события `oninput`, который будет срабатывать при изменении значения в ячейке. Внутри обработчика мы сравниваем текущее значение ячейки с предыдущим сохраненным значением, и если они не совпадают, то выполняем необходимые действия. После этого обновляем сохраненное значение.
Таким образом, данный скрипт позволит вам отслеживать изменения в ячейке и реагировать на них соответствующим образом. Не забудьте подключить этот скрипт к вашей странице, а также присвоить элементу ячейки нужный id для корректной работы скрипта.