У меня есть лист Google, который содержит скрипт, который должен запускаться при нажатии кнопки. Рекомендованный способ сделать это (насколько я могу судить) - вставить изображение, а затем прикрепить скрипт к соответствующему изображению.
Это прекрасно работает, пока я открываю лист на рабочем столе. Тем не менее, если я открою лист в приложении Google Android для листа, изображение просто не появится. Насколько я могу судить, это (отсутствие) поведения нигде не задокументировано, но я нашел несколько людей с такой же проблемой.
Мне было интересно, как мне обойти эту проблему. Я пропустил что-то очевидное, что сделает мои изображения видимыми в приложении Android? Или есть еще один простой способ добавить триггер сценария на лист, который будет работать на мобильных устройствах?
Ответы:
Похоже, что в настоящее время приложения Android Sheets не работают ни с изображениями, ни с пользовательскими пунктами меню. Я предлагаю создать «меню функций» в электронной таблице. Например:
onEdit
(простой триггер), выполняемая при каждом редактировании, проверяет, изменилось ли содержимое B1. Если это так, он запускает соответствующую функцию.Вот мой код с двумя функциями, включенными для демонстрации:
Условие
/^\w+$/.test(e.value)
- просто проверить, что у нас есть непустая строка, и мы не выполняем вредоносный код, который кто-то каким-то образом поместил в ячейку B1. После вызова функции с помощьюthis[e.value]();
(this
относится к глобальному объекту и содержит имена функций) содержимое B1 очищается. Можно выбрать снова запустить ту же функцию или другую.В качестве подтверждения концепции, вот скриншоты из приложения. Снимок экрана 1: выбор функции
Снимок экрана 2: после запуска функции
Ссылки
источник
onEdit
триггер на устанавливаемый, который запускается с разрешения пользователя, установившего триггер.