使用VBA循环一组命令,粘贴新URL时= XMLFILTER不会更新URL

时间:2019-06-03 12:45:30

标签: excel vba xml-parsing

我正在使用Bing maps API尝试生成距离,然后将这些距离粘贴到excel中。

该过程似乎是:

1-生成网址。

2-解析在第一个URL中找到的xpath:CallbackUrl参数。

3-解析在第二个URL中找到的xpath:ResultUrl参数。

4-解析xpath:TravelDistance以获取距离。

问题是第3步,ResultURL不会自动更新。它显示为#Value!直到选择单元格,然后按Enter。

  • 我尝试设置VBA以选择单元格,然后按Enter。
  • 我尝试设置VBA以写入单元格内容:

Sheets(ref).Range("C17").Value = "=FILTERXML(WEBSERVICE(C16)," & Chr(34) & "//ResultUrl" & Chr(34) & ")"

  • VBA不想更新该单元格值。

单元格C16应该是:

=FILTERXML(WEBSERVICE(C16),"//ResultUrl")

每当C16更新时,它都应更新到新的URL。相反,每当C16使用CallbackUrl更新时,C17就会转到#VALUE!错误。

1 个答案:

答案 0 :(得分:1)

我在通话之间增加了5秒钟的等待时间,并且可以正常工作。事实证明,生成URL花了几秒钟。