从GAS,是否可以调用Maps API服务,例如DistanceMatrix?
我想计算存储在电子表格中的地址之间的距离。 我认为需要显示地图,以符合Maps API的条款。
可能会出现以下内容吗?
var service = new Maps.DistanceMatrixService();
service.getDistanceMatrix(
{
origins: [OAddresses],
destinations: [DAddresses],
travelMode: Maps.TravelMode.DRIVING,
unitSystem: Maps.UnitSystem.METRIC,
avoidHighways: false,
avoidTolls: false
}, callback);
答案 0 :(得分:0)
这将有助于你..它是文件解析的完整代码 由于标题,它跳过第1行 请根据需要更改“工作表名称” 检查屏幕截图以便更好地理解 ScreenShot: https://docs.google.com/file/d/0B5nG8jqFwu2eMk9uajZJX2VhRjg/edit
function geoDistance() {
var sheetName = 'xyz';
var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var selectedSheet = activeSpreadsheet.getSheetByName(sheetName);
var sheet = selectedSheet;
var lastRow = sheet.getLastRow();
var N = lastRow;
for (var i=2;i<=N;i++){
var startpoint = sheet.getRange(i, 1, 1, 1).getValue();
var endpoint = sheet.getRange(i, 2, 1, 1).getValue();
var directions = Maps.newDirectionFinder()
.setOrigin(startpoint)
.setDestination(endpoint)
.setMode(Maps.DirectionFinder.Mode.DRIVING)
.getDirections();
var print = sheet.getRange(i,3,1,1).setValue(directions.routes[0].legs[0].distance.text);
}}