Я написал пользовательскую функцию, называемую sendEmails, в скрипте, связанном с электронной таблицей google. Он работает, когда я запускаю функцию через редактор сценариев, однако она не работает, когда я запускаю ее через электронную таблицу.
Моя цель - запустить электронную таблицу без использования пользователя и автоматически отправить предупреждение (в моем случае по электронной почте), когда условие выполняется на ячейках электронной таблицы.
Это неработающий код:
=if(V3=X3,sendEmails(),"Waiting")
Предупреждение может быть любым, что я могу читать, используя мой телефон или другой компьютер.
С помощью пользовательских функций вы ограничены видами услуг, которые вы можете использовать, поскольку пользовательские функции никогда не запрашивают аутентификацию. https://developers.google.com/apps-script/guides/sheets/functions#using_apps_script_services
Вы можете добавить свою функцию на панель инструментов надстройки или установить установочный триггер для запуска функции sendEmails()
.
Вот еще несколько документов, которые помогут вам.
https://developers.google.com/apps-script/guides/menus
https://developers.google.com/apps-script/guides/triggers/installable
Не смотря на полный список кода, это трудно сказать. Две возможности, основанные на вашей отдельной строке кода.
1) Недостаточно сказать =if(V3==X3)
и предположить, что если они станут равными, они будут срабатывать. Вы должны указать для электронной таблицы, когда она должна проверить, являются ли они равными (например, при редактировании электронной таблицы или в заданный интервал времени).
2) В вашем операторе if вы указываете, что V3 СЛЕДУЕТ равняться X3, а не проверять его. =if(V3==X3)
или =if(V3===X3)
разрешает это.