通过 Web 服务和 FilterXML 获取 Bing 地图高程数据会产生 VALUE 错误

问题描述 投票:0回答:1

这是在 Excel 365 中。

我有一个有效的 Bing 地图 API 密钥,并使用类似的公式来获取电子表格中地址的纬度和经度数据。

尝试对海拔数据做同样的事情是行不通的,但是,在查阅了 Bing 的文档并在线搜索后,我看不出我做错了什么。

=FILTERXML(WEBSERVICE("http://dev.virtualearth.net/REST/v1/Elevation/List?points={"&I1092&","&J1092&"}&key={"&BingKey&"}"),"//*")

BingKey 是包含键的命名范围,I 列和 J 列保存纬度和经度值。我尝试用文字值替换所有引用,但仍然收到错误。 Xpath 特意设置为返回所有内容,只是为了看看我是否能让公式的 Web 服务部分起作用。

有人可以告诉我哪里出错了吗?

excel bing-maps excel-365
1个回答
0
投票

我发现了几个问题。

  1. 您在纬度/经度和键值周围有花括号,连接时,这些值将被添加到字符串中,从而使这些值无效。
  2. 默认响应格式是 JSON,您尝试将其解析为 XML,因此 Excel 中会出现格式不正确的错误消息。将
    &output=xml
    添加到 URL 即可运行。

这是您提供的公式的修改版本。

=FILTERXML(WEBSERVICE("http://dev.virtualearth.net/REST/v1/Elevation/List?points="&I1092&","&J1092&"&output=xml&key="&BingKey),"//*")
© www.soinside.com 2019 - 2024. All rights reserved.