Есть ли способ ограничить ввод данных в ячейку листов Google, только один раз? - PullRequest
0 голосов
/ 20 апреля 2019

Я хочу сделать систему посещаемости сообщений в листах Google. Я поделюсь ссылкой с людьми, где они могут добавить цену еды, которую они съели (завтрак) и посещаемость их ужина. Я хочу убедиться, что однажды человек отредактировал значение, например, цена или посещаемость (присутствует, отсутствует), они не могут редактировать ее обратно ПОСЛЕ УКАЗАННОГО ВРЕМЕНИ ДНЯ, например они не могут редактировать свой выбор после 4:00 вечера. В основном, посещаемость целого месяца на одном листе.

Я сделал лист, НО не могу заставить его работать так, как должен.

1 Ответ

1 голос
/ 20 апреля 2019

Те же ограничения, которые вы можете применить вручную, используя защищенные диапазоны, которые вы можете применить с помощью скриптов приложений и Защита .

Вы должны использовать Инструменты> Редактор сценариев и создать одну функцию, которая применяет защиту, чтобы только вы (или указанные пользователи) могли редактировать лист, а затем другую функцию, которая снимает защиту.

В редакторе сценариев вы можете нажать кнопку запуска, которая приведет вас на панель инструментов «Сценарий приложений», чтобы установить триггер .

Вы захотите создать два триггера: один в течение дня, чтобы вызвать функцию, чтобы разрешить редактирование, и другой триггер в 16:00, чтобы вызвать функцию, которая ограничивает редактирование. Обратите внимание, что такой основанный на времени триггер будет запускаться между 4 и 5 часами дня или между 3 и 4 часами дня, в зависимости от того, какой диапазон вы выберете. Как только он начнет работать, он будет согласованным (например, 16:37), но вы не можете указать 16:00 с помощью триггеров.

Если вам требуется изменить его ровно в 16:00, вы можете вызвать Drive API для разрешений со своего компьютера, запрограммированного на работу ровно в 16:00, чтобы удалить разрешения на всем листе. динамически.

...