Это можно сделать только скриптом.
При запуске, он должен:
1. Преобразовать исходные данные в массив;
2. Пройтись циклом по массиву, создать новый массив исходя из данных исходного массива;
3. Вставить новый массив на лист.
Как только роботам с ИИ дадут гражданские права, тогда за Вами обязательно придут. Возможно даже роботы-полицейские.
Однако на данный момент роботы не обладают признаками правосубъектности и не могут быть стороной судебного разбирательства ни в каком качестве. Так что в описанной Вами ситуации, Вы можете не переживать. Скажем, пока не переживать.
Шансов на выживание мало, на будущее, в таких случаях надо:
1. Как можно быстрее разобрать аппарат, отключить и извлечь батарею;
2. Погрузить на ночь в чистый (без примесей) спирт;
3. Просушить, собрать, отнести в сервис на диагностику.
Спирт активно вытягивает воду и есть шанс, что телефон выживет.
Но если проводники внутри под действием воды и тока начали активно корродировать, то это уже может не помочь.
Обратите внимание - когда Вы переходите на другой лист GS, ссылка видоизменятется.
Используйте новую ссылку.
Второй вариант - сделать скрипт, который будет делать активным нужный лист.
Ставите триггер на onEdit - изменение ячеек в книге. Фильтруете обработку изменения на нужном листе и ячейках.
Далее - определяете как оповещать.
Если почта - есть примеры использования Gmail API.
Если Телеграм - примеры также есть.
Windows Forms - это в основном внешняя оболочка. Под капотом Вы можете использовать все самые современые технологии.
Преимущество Windows Forms - высокая скорость получения результата.
Странная ситуация. Если СИМ "отваливается" от сети - это либо зависает железо, либо сеть не подтверждает регистрацию СИМ.
Зная, что операторы борятся с GSM шлюзами, могу предположить, что причина в операторе.
Попробуйте (при возможности) смоделировать вызовы на другом железе. Также запустить железо в зоне действия другой БС.
Это настройки коммутатора, который использует оператор (подвижной или стационарной) связи.
Настройки могут быть изменены по каким-либо коммерческим или техническим соображениям. Коммутаторов кстати может быть несколько и маршрутизация вызова может меняться. Отсюда и различные показатели времени ожидания.
У Вас отличный кейс! Отличный в плане того, что есть возможность получить всю заработную плату с дня заключения трудового договора, до его расторжения. Перечитайте трудовой договор, проконсултируйтесь с юристом. И если Вас что-то не устраивает - всегда можно уволиться )
Функцию onEdit нужно записать в триггер, который вызывается при изменении данных в книге.
Вы судя по всему, пытаетесь просто запустить выполнение этой функции.
var sUser = Session.getActiveUser().getEmail() || Session.getEffectiveUser().getEmail();
это у меня вполне работает.
Возможно причина в том, что доступ к документу у Вас включен для всех имеющих ссылку, а стОит включить для определённых пользователей (по email)
В рамках Google Workspace это можно легко выполнить, но это решение платное.
В текущей ситуации - каждый сотрудник может запускать расшаренный скрипт (по таймеру например), который будет брать данные из гугл таблицы (также расшаренной) и закидывать в свой календарь.