Мониторинг ячейки. Как сделать скрипт мониторинга изменения в ячейке?

Ссылка скопирована
1 ответ

Доброго!
Есть потребность в создании скрипта:
- назначить в ячейку А (группу ячеек, столбец) формулу которая будет вычислять разницу между только что введенным значением и предыдущим в другой ячейке В.
- заставить ячейку А мониторить состояние ячейки В с определенным интервалом времени.

Дополнительно:

На днях делал подобную задачу. Посмотртеь видео и пример можно тут 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; //Указываем на каких листах должен работать скрипт //Что-то делаем... };

Интервал времени можно задать в триггерах проекта, навесив триггер по времени на любую функцию.

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Максим Павлов Ответ

Для создания скрипта мониторинга изменения в ячейке, вы можете воспользоваться JavaScript и событием `onchange`. Вот пример кода на JavaScript, который будет отслеживать изменения в ячейке:

// Получаем элемент ячейки
var cell = document.getElementById('myCell');
 
// Сохраняем начальное значение ячейки
var previousValue = cell.innerHTML;
 
// Добавляем обработчик события изменения
cell.oninput = function() {
    if (cell.innerHTML !== previousValue) {
        // Если значение изменилось, выполняем необходимые действия
        console.log('Значение ячейки изменилось!');
 
        // Обновляем сохраненное значение
        previousValue = cell.innerHTML;
    }
};

// Получаем элемент ячейки var cell = document.getElementById('myCell'); // Сохраняем начальное значение ячейки var previousValue = cell.innerHTML; // Добавляем обработчик события изменения cell.oninput = function() { if (cell.innerHTML !== previousValue) { // Если значение изменилось, выполняем необходимые действия console.log('Значение ячейки изменилось!'); // Обновляем сохраненное значение previousValue = cell.innerHTML; } };

В данном коде мы сначала получаем элемент ячейки по его id, затем сохраняем начальное значение ячейки. Далее мы добавляем обработчик события `oninput`, который будет срабатывать при изменении значения в ячейке. Внутри обработчика мы сравниваем текущее значение ячейки с предыдущим сохраненным значением, и если они не совпадают, то выполняем необходимые действия. После этого обновляем сохраненное значение.

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

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно