我使用Google Sheets作为里程追踪器来计算从我家到不同地址的距离。这个公式已经对我起了几个月的作用,但最近停止了:
=ROUND((importxml("https://maps.googleapis.com/maps/api/distancematrix/xml?&origins="&"My+Home+Address"&"&destinations="&A1&"&sensor=false&units=imperial&alternatives=false&key=MY_API_KEY","/DistanceMatrixResponse/row/element/distance/value")/1609.344)*2,1)我正在使用我自己的有效API密钥,并且已经验证了查询可以在Google Sheets之外工作。有趣的是,如果我将"/distance/value“更改为"/duration/value",Sheets会很好地返回响应。
下面是距离矩阵返回的XML:
<DistanceMatrixResponse>
<status>OK</status>
<origin_address>Home Address, USA</origin_address>
<destination_address>Destination Address, USA</destination_address>
<row>
<element>
<status>OK</status>
<duration>
<value>1983</value>
<text>33 mins</text>
</duration>
<distance>
<value>29971</value>
<text>18.6 mi</text>
</distance>
</element>
</row>
</DistanceMatrixResponse>我如何让“距离”再次工作??
发布于 2020-03-13 17:27:53
这对我来说很有效:
=IMPORTXML("https://maps.googleapis.com/maps/api/distancematrix/xml?&origins="&B1&"&destinations="&B2&"&sensor=false&alternatives=false&key="&B3,"/DistanceMatrixResponse/row/element/distance/text")顺便说一句,如果你去掉了units=imperial,它默认是公制的,你就不用用/1609.344了

https://stackoverflow.com/questions/60667341
复制相似问题