Уровень кодирования : начинающий
Продолжительность : 10 минут
Тип проекта : Пользовательская функция и автоматизация с пользовательским меню
Цели
- Поймите, что делает решение.
- Понять, какие функции выполняют службы Apps Script в рамках решения.
- Настройте сценарий.
- Запустите скрипт.
Об этом решении
Используя пользовательские функции, вы можете рассчитать расстояние между двумя точками и перевести его из метров в мили. Дополнительная функция автоматизации предоставляет пользовательское меню, позволяющее добавлять пошаговые инструкции от начального адреса до конечного на новом листе.
Как это работает
Скрипт использует 2 пользовательские функции и автоматизацию.
- Функция
drivingDistance(origin, destination)
использует сервис Карт для расчета маршрутов проезда между двумя точками и возвращает расстояние между двумя адресами в метрах. - Функция
metersToMiles(meters)
вычисляет эквивалентное количество миль для заданного количества метров. - Автоматизация предлагает пользователю ввести строку начального и конечного адресов, для которой требуется рассчитать маршрут проезда, и добавляет пошаговые инструкции проезда на новый лист.
Службы скриптов приложений
Это решение использует следующие сервисы:
- Служба электронных таблиц — добавляет пользовательское меню, добавляет демонстрационные данные для тестирования этого решения и форматирует новые листы, когда скрипт добавляет маршруты проезда.
- Базовая служба – использует класс
Browser
, чтобы предложить пользователю ввести номер строки для указания маршрута и оповестить пользователя в случае возникновения ошибки. - Служба Utilities – обновляет шаблонные строки указанной пользователем информацией.
- Сервис «Карты» — получает пошаговые инструкции Google Maps от начального адреса до конечного адреса.
Предпосылки
Для использования этого образца вам необходимы следующие предварительные условия:
- Учетная запись Google (для учетных записей Google Workspace может потребоваться одобрение администратора).
- Веб-браузер с доступом в Интернет.
Настройте сценарий
- Создайте копию таблицы «Расчёт расстояния поездки и перевод метров в мили» . Проект Apps Script для этого решения прикреплён к таблице.
Сделать копию - Чтобы добавить заголовки и демонстрационные данные на лист, нажмите «Указания» > «Подготовить лист» . Для появления этого пользовательского меню может потребоваться обновить страницу.
При появлении запроса авторизуйте скрипт. Если на экране согласия OAuth отображается предупреждение « Это приложение не проверено» , выберите «Дополнительно» > «Перейти к {Имя проекта} (небезопасно)» .
Снова нажмите «Направления» > «Подготовить лист» .
Запустить скрипт
- В ячейке
C2
введите формулу=DRIVINGDISTANCE(A2,B2)
и нажмите Enter . Если вы находитесь в регионе, где используются десятичные дроби, вам может потребоваться ввести=DRIVINGDISTANCE(A2;B2)
. - В ячейке
D2
введите формулу=METERSTOMILES(C2)
и нажмите Enter . - (Необязательно) Добавьте дополнительные строки начальных и конечных адресов и скопируйте формулы из столбцов
C
иD
, чтобы рассчитать расстояние между различными местами. - Нажмите «Указания» > «Создать пошаговое руководство» .
- В диалоговом окне введите номер строки адресов, для которых вы хотите создать маршруты, и нажмите кнопку ОК .
- Проверьте инструкции по проезду на новом листе, созданном сценарием.
Проверьте код
Чтобы просмотреть код Apps Script для этого решения, нажмите «Просмотреть исходный код» ниже:
Посмотреть исходный код
Код.gs
Авторы
Этот образец поддерживается компанией Google с помощью экспертов Google Developer Experts.