Добрый вечер. Помогите, пожалуйста. Имеется Google таблица куда пользователи заносят свои данные. В первом столбце из выпадающего списка они выбирают свою фамилию, после того как они выбрали себя, в 3 столбце автоматически выводится текущая дата (дата изменения данной ячейки), а дальше по столбцам они заносят свои данные. Нужно чтобы ячейка с датой автоматически заблокировалась для всех пользователей кроме владельца. Много информации нашел в интернете, практически все работает, но ячейка блокируется для всех, кроме владельца и того кто внес изменения в эту ячейку. Как и его заблокировать тоже? Заранее благодарен.
Добрый вечер. Помогите, пожалуйста. Имеется Google таблица куда пользователи заносят свои данные. В первом столбце из выпадающего списка они выбирают свою фамилию, после того как они выбрали себя, в 3 столбце автоматически выводится текущая дата (дата изменения данной ячейки), а дальше по столбцам они заносят свои данные. Нужно чтобы ячейка с датой автоматически заблокировалась для всех пользователей кроме владельца. Много информации нашел в интернете, практически все работает, но ячейка блокируется для всех, кроме владельца и того кто внес изменения в эту ячейку. Как и его заблокировать тоже? Заранее благодарен.forseti
Каким образом автоматом проставляется дата?, если это скрипт то почему просто не установить защищенный диапазон на столбец с датами , автором таблицы. Данные - Настроить защищенные листы и диапазон, справа вылезит окно там добавить защищенный диапазон и запретить редактирование всем кроме админа. Если у вас авто проставление данных не скриптом то напишите как? потому что я когда искал нашел только решение со скриптом Скрипт можете найти тут:
Т.к. функция now постоянно обновляется и если вы вбили 23.08 свои данные то 25.08 там будет стоять 25.08, 26го - 26е и т.д.
Функционал как вы хотите (блокировка именно после ввода данных) - не доступен стандартными инструментами, придется изощряться и писать скрипт, он вам надо?
Каким образом автоматом проставляется дата?, если это скрипт то почему просто не установить защищенный диапазон на столбец с датами , автором таблицы. Данные - Настроить защищенные листы и диапазон, справа вылезит окно там добавить защищенный диапазон и запретить редактирование всем кроме админа. Если у вас авто проставление данных не скриптом то напишите как? потому что я когда искал нашел только решение со скриптом Скрипт можете найти тут:
Т.к. функция now постоянно обновляется и если вы вбили 23.08 свои данные то 25.08 там будет стоять 25.08, 26го - 26е и т.д.
Функционал как вы хотите (блокировка именно после ввода данных) - не доступен стандартными инструментами, придется изощряться и писать скрипт, он вам надо?Kashimirush
Kashimirush, Дата проставляется автоматом скриптом. Защиту на столбец поставить можно, только скрипт запускается от редактора (не от владельца таблицы) и, следовательно, дата в этот столбец проставляться не будет, т.к. редактору запрещено вносить изменения в этот столбец. За основу скрипта я взял тот, что Вы предложили. Только у меня дата не обновляется с каждым днем, а остается на момент редактирования ячейки. Пробовал создать триггер, который по времени, допустим раз в минуту блокирует ячейки, но он создает их снова и снова, а мне нужно чтобы он один раз это сделал и все. Еще нашел вариант:
Там нужно сделать копию листа и в этот лист будет копироваться дата, а затем из этого листа скриптом вставляется дата в исходную таблицу и сколько не удаляй или редактируй дату, она будет всегда одна и та же, такой как в таблице копии, и этот лист с таблицей делаем скрытым и все прекрасно работает. Но, если пользователь догадается, то он сможет открыть скрытые листы. Только в этом варианте у меня не срабатывает первый скрипт, который дату проставляет. Я не знаю, может скрипты конфликтуют. Я не программист. Вот прошу помощи. Если можно здесь выкладывать текст скриптов, могу показать и первый (тот, что дату проставляет) и второй, тот что работает со скрытым листом. Или могу дать доступ на тестовую таблицу Google.
Kashimirush, Дата проставляется автоматом скриптом. Защиту на столбец поставить можно, только скрипт запускается от редактора (не от владельца таблицы) и, следовательно, дата в этот столбец проставляться не будет, т.к. редактору запрещено вносить изменения в этот столбец. За основу скрипта я взял тот, что Вы предложили. Только у меня дата не обновляется с каждым днем, а остается на момент редактирования ячейки. Пробовал создать триггер, который по времени, допустим раз в минуту блокирует ячейки, но он создает их снова и снова, а мне нужно чтобы он один раз это сделал и все. Еще нашел вариант:
Там нужно сделать копию листа и в этот лист будет копироваться дата, а затем из этого листа скриптом вставляется дата в исходную таблицу и сколько не удаляй или редактируй дату, она будет всегда одна и та же, такой как в таблице копии, и этот лист с таблицей делаем скрытым и все прекрасно работает. Но, если пользователь догадается, то он сможет открыть скрытые листы. Только в этом варианте у меня не срабатывает первый скрипт, который дату проставляет. Я не знаю, может скрипты конфликтуют. Я не программист. Вот прошу помощи. Если можно здесь выкладывать текст скриптов, могу показать и первый (тот, что дату проставляет) и второй, тот что работает со скрытым листом. Или могу дать доступ на тестовую таблицу Google.forseti
Если кто поможет мне "склеить" два этих скрипта, чтобы все работало, буду благодарен. Насколько я понял, сделать блокировку ячеек для всех редакторов кроме владельца не возможно. Тот кто вносит данные в ячейку обязательно будет иметь доступ к таблице и блокировка не получится. Поэтому хотя бы таким способом сделать
но к этому скрипту нужно привязать скрипт вставки даты
Если кто поможет мне "склеить" два этих скрипта, чтобы все работало, буду благодарен. Насколько я понял, сделать блокировку ячеек для всех редакторов кроме владельца не возможно. Тот кто вносит данные в ячейку обязательно будет иметь доступ к таблице и блокировка не получится. Поэтому хотя бы таким способом сделать
Странно, действительно скрипт не работает если диапазон защищен другим пользователем. Можно обмануть пользователей, столбец для вывода даты сделать техническим в конце таблицы например и скрыть его от глаз обычных пользователей. А в нужный столбец просто вывести данные из столбца с датами и заблокировать столбец "клон" пример тут : Пример таблицы Тут я скрыл столбец M в него скрипт выводит даты, столбец N защищен от редактирования могу править только Я. Решение топорное, я не спец в скриптах.
Странно, действительно скрипт не работает если диапазон защищен другим пользователем. Можно обмануть пользователей, столбец для вывода даты сделать техническим в конце таблицы например и скрыть его от глаз обычных пользователей. А в нужный столбец просто вывести данные из столбца с датами и заблокировать столбец "клон" пример тут : Пример таблицы Тут я скрыл столбец M в него скрипт выводит даты, столбец N защищен от редактирования могу править только Я. Решение топорное, я не спец в скриптах.Kashimirush
Столбец клон прописан через формулу массива - чтобы не протягивать формулы при увеличении таблицы или перетасовке.
=ArrayFormula(M:M)
Минус - для админа, если нужно будет все таки дату отредактировать - нужно лезть в скрытый столбец и править там, чтобы столбец Клон не выдал ошибку.
Столбец клон прописан через формулу массива - чтобы не протягивать формулы при увеличении таблицы или перетасовке.
=ArrayFormula(M:M)
Минус - для админа, если нужно будет все таки дату отредактировать - нужно лезть в скрытый столбец и править там, чтобы столбец Клон не выдал ошибку.Kashimirush