自定义GoogleSheets函数可在脚本调试中使用,而不能在googlesheet中使用

时间:2019-03-15 14:00:08

标签: google-maps google-apps-script google-sheets

我编写了一个简单的脚本来获取两个位置之间的距离,每个位置都位于GoogleSheets的不同单元中(如下所示)。当我定义变量并运行脚本时,日志会给出正确的结果。但是,当注释掉变量的定义并在Google表格的单元格中键入函数=GOOGLEMAPS(A2,C1)时,该单元格会闪烁“正在加载...”指示符,但没有任何显示。无效的公式或类似的东西都不会出现googlesheets错误。

/**
* Get distance between 2 addresses
* @param start_address Address as String
* @param end_address Address as String
* @customfunction
*/

function GOOGLEMAPS(start_address,end_address) {

  //start_address = "The White House, 1600 Pennsylvania Ave NW, Washington, DC 20500";
  //end_address = "Lincoln Memorial, 2 Lincoln Memorial Cir NW, Washington, DC 20037";

  var mapObj = Maps.newDirectionFinder();
  mapObj.setOrigin(start_address);
  mapObj.setDestination(end_address);
  var directions = mapObj.getDirections();

 var meters = directions["routes"][0]["legs"][0]["distance"]["value"];
 var distance = meters * 0.000621371

 Logger.log(distance)

}

我确定这是一个菜鸟错误,但是我是编码新手。在发布之前,我做了很多研究,而我唯一能找到的建议就是清除我的缓存/ cookie(我做了,但是没有解决)。还有其他想法吗?

0 个答案:

没有答案