使用来自不同单元格的超链接时出错

时间:2019-03-21 21:35:26

标签: vba web-scraping hyperlink

我已经在vba中编写了一个脚本,以利用hyperlinksRange(A1")的{​​{1}}来从每个网页中抓取Range("A2")。但是,执行以下宏时,我得到了指向title的错误Expected Function or Variable

.FollowHyperlink
  

如何使用这些超链接来解析网页中的标题?

下图显示了超链接在单元格中的外观: enter image description here

1 个答案:

答案 0 :(得分:1)

在XMLHttpRequest的GET方法中,您需要一个字符串,更具体地说是一个绝对URL,才能在Open之后传递。相反,您尝试使用Workbook.FollowHyperlink,这是一个返回Workbook对象的表达式。结果可能是以下结果:

  

显示已缓存的文档(如果已下载)。   否则,此方法解析超链接,下载目标   文档,并在适当的应用程序中显示该文档。

您尝试的是不可能的。

语法为:

If cel <> vbNullString Then
            ThisWorkbook.FollowHyperlink cel.Value

然后您可能会注意到一个新的选项卡/浏览器窗口打开,以显示相应的Web文档(如果有效)。

我相信您消息的特殊性是由于您在参数周围使用了括号。

您可以检索超链接的基础地址:

.Open "GET", cel.Hyperlinks(1).Address, False