Расстояние от карты Google в Google Таблицах - PullRequest
0 голосов
/ 07 мая 2020

Извините за мой английский sh. Но квазион. В моих Google Таблицах я использую старый скрипт, который я нашел в некоторых из тех же топов c. Вот он:

function getDirection(city1, city2, unit) {
  Utilities.sleep(1000);
  var directions = Maps.newDirectionFinder()
    .setOrigin(city1).setDestination(city2)
    .setMode(Maps.DirectionFinder.Mode.DRIVING)
    .getDirections();
  var d = directions.routes[0].legs[0].distance.text;
  var distance, value = d.split(" ")[0].replace(",", ""), text = d.split(" ")[1];
  if(text == unit) {
    distance = value;
  } else if(text == "km" && unit == "mi") {
    distance = value / 1.6;
  } else {
    distance = value * 1.6;
  }
  return Number(distance);
}

В таблице у меня есть маршрут в таком виде: 1. Точка A 2. Точка B - расстояние от точки A 3. Точка C - расстояние от точки B. 10. ... - Расстояние от точки 9

Всего у меня около 500 таких записей. Но скрипт начал выдавать ошибку: служба вызывается слишком много раз за один день (маршрут).

Беспокоят следующие вопросы: 1. Как обойти ограничение? Возможно, вы можете изменить сам скрипт на более новый алгоритм? 2. Скрипт запускается каждый раз, когда я открываю лист, как я могу заставить его работать, только если в лист внесены изменения?

...