«Библиотечное решение» на самом деле ваш лучший выбор. Это не так сложно, как кажется, но требует немного разовой работы.
Сначала вы создаете свой сценарий в одной электронной таблице (назовем ее главной таблицей).
Сохраните версию скрипта, выбрав Файл → Управление версиями в редакторе скриптов, и присвойте вашей версии имя:
Закройте это диалоговое окно и выберите « Файл» → «Свойства проекта» . Здесь найдите ключ проекта , который представляет собой случайную комбинацию символов:
Скопируйте или запишите ключ проекта.
Когда вы создали новую электронную таблицу и хотите повторно использовать сценарий, перейдите в редактор сценариев и нажмите Ресурсы → Библиотеки (если вы не сохранили новый сценарий, вам будет предложено сделать это сейчас).
В поле « Найти библиотеку» вставьте ключ проекта из мастер- проекта (1) и нажмите « Выбрать» (2):
Это заполнит список вашим главным сценарием. Дайте ему более понятное имя (3) и включите режим разработки (4) (это позволит вам отлаживать библиотеку). Выберите самую последнюю версию вашего скрипта (5).
Теперь вы можете использовать функции из вашей библиотеки в новом скрипте. Просто добавьте любые имена функций к имени, указанному вами в (3), чтобы, если вы определили свою библиотеку как MyLibrary
и в вашей библиотеке есть функция, myFunction
которую вы хотите вызвать, вы вызываете MyLibrary.myFunction()
.
Когда вы хотите обновить свою библиотеку, вы просто делаете это и сохраняете файл. Любые сценарии, которые зависят от библиотеки, увидят обновленный код библиотеки.
Я просто попробовал это упражнение в качестве подтверждения концепции:
- Настройте библиотеку с функцией:
function myFunction() {return "Foo"}
- Включите его в другой скрипт, идентифицируя библиотеку как
MyLibrary
- Вызывается функция библиотеки с
Logger.log(MyLibrary.myFunction)
- Журнал отображает
Foo
- Отредактировал библиотеку:
function myFunction() {return "Bar"}
- Перезапущен включающий скрипт, теперь отображается журнал
Bar
Так что это действительно довольно просто после начальной настройки. Посмотрите эту папку на моем Google Диске для реального примера.
Также см. Документацию Google для библиотек .
Короткий ответ
Опубликуйте свой скрипт как дополнение. Помните, что вы можете сделать его общедоступным, незарегистрированным или частным, доступным для группы Google.
объяснение
Галерея скриптов была заменена надстройками, которые были добавлены в 2014 году.
Чтобы опубликовать дополнение, вы должны заплатить 5 долларов, чтобы иметь возможность опубликовать дополнение в Интернет-магазине Chrome. Если вы сделаете надстройку общедоступной, она должна быть проверена Google перед тем, как сделать ее общедоступной, но если вы сделаете ее закрытой для группы Google, она будет доступна через несколько минут.
Альтернативой публикации вашего дополнения является использование функции тестирования дополнения, но у нее есть некоторые ограничения, такие как невозможность «проверить» триггеры, которые в зависимости от вашего сценария могут быть существенным ограничением или нет.
Использовать надстройку лучше, чем использовать библиотеку, потому что библиотеки могут замедлить работу вашей электронной таблицы, но особенно потому, что с точки зрения конечного пользователя ее проще использовать и добавлять, чем добавлять проект сценария, добавив код, необходимый для вызова библиотеки и добавления самой библиотеки.
Преимущество создателя дополнения может заключаться в том, что пользователи дополнения не смогут просматривать код дополнения из самой надстройки.
С другой стороны, для этого требуются некоторые изображения с определенными требованиями к формату и размеру, которые могут считаться слишком сложными для определенных случаев использования, и мы, наконец, могли бы подумать, что копирование / вставка нашего сценария или копирование электронной таблицы (документ / форма / презентация) является простым решением для этих случаев использования.
Ссылки
источник
Вы должны попробовать Google Clasp, о котором идет речь
Не пробовал, но похоже, что есть команды для получения кода сценария проекта, создания и обновления:
источник
На полпути скачивать файлы из вашего проекта.
Решение № 1
Я нашел инструмент для достижения этой цели:
http://googleappsscriptexport.trototype.com/, автор kerem tiryaki
Недостаток
GoogleAppsScriptExporterForAll теперь имеет доступ к вашей учетной записи Google (придется удалить ее вручную)
Решение № 2
Я также использую это дополнение для интеграции скриптов Git-Hub и Google Sheets: https://chrome.google.com/webstore/detail/google-apps-script-github/lfjcgcmkmjjlieihflfhjopckgpelofo
После установки этого дополнения вам необходимо:
Недостаток
Пользователь по-прежнему должен открыть редактор сценариев и скопировать код.
преимущества
Следующие шаги
Следующие шаги для меня будут:
*.js
файлы в один файл. Успешно использовал https://jscompress.com/ =)источник