2012-08-06 20 views
1

我面临的问题是,我有一个电子表格,它从内部网站中将数据存储在浏览器中的cookie中。我的宏通过Internet Explorer对网站进行身份验证,但是我添加到导向网站的数据的超链接将在用户的默认浏览器中打开。有没有方法可以改变Hyperlinks方法打开哪个浏览器,或者有办法直接将请求转发到用户的默认浏览器,而无需通过Microsoft Office Protocol Discovery? Outlook中的超链接直接打开默认浏览器,是否有一个原因,Excel不?或者有没有办法以某种方式获取该cookie并将其与请求一起发送?任何帮助,将不胜感激。在Excel VBA中绕过Microsoft Office协议发现

回答

0

如果更改链接以指向包含它们的单元格,可以捕获FollowHyperlink事件(在工作表或工作簿级别)并使用它在IE中打开链接。假设你可以把完整的链接作为“文本显示”。

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) 
    Dim url As String 
    url = Target.TextToDisplay 
    'automate IE to open the link... 
End Sub 
+0

我正在考虑使用类似于这种方法的东西,但我喜欢你的解决方案比我所考虑的更多。如果我没有得到回应,我会以某种方式绕过它,我会用这个。我只是想知道是否有一种方法不需要我这样写,因为它需要很多新的代码,出于各种不同的原因,我现在不会介入。 – derigible 2012-08-06 18:54:09

+0

**注意:TextToDisplay不起作用。我意识到我应该引用单元格本身之后,我最终不得不使用ScreenTip(我没有仔细阅读它)。它现在很好用。谢谢! – derigible 2012-08-06 22:38:40

+0

'TextToDisplay'对我来说可以,因为我正在使用该属性的实际URL。很高兴听到你的工作。 – 2012-08-06 22:43:28