如何使用Excel VBA在PC和Mac上打开默认浏览器?

4

我需要使用Excel VBA在默认的Web浏览器中打开一个URL。它应该适用于PC和Mac。

我还需要获取浏览器实例,以便可以访问其文档对象并读取一些HTML元素或页面中呈现的任何内容。

我知道如何使用CreateObject打开InternetExplorer,这将返回浏览器实例。也许在Mac中我可以以同样的方式打开Safari浏览器。但是我想打开默认的Web浏览器并获取浏览器实例。


1
一种方法是在VBA中进行初始测试,以查看您是否在MAC或PC上(Application.PathSeparator是其中一种方法),然后根据用户所在的位置调用不同的子程序。据我所知,PC上的VBA只能操作IE,因此默认浏览器的想法可能无法实现。这里有一些代码,可以帮助您开始使用Mac(使用带有AppleScript的VBA)。 - Scott Holtzman
1
从命令行启动URL,让计算机找出默认浏览器。在Windows上使用CreateObject("WScript.Shell").Run "www.google.com"。我不知道Mac的情况。 - WhiteHat
你能用这个来打开网页并设置代理以及用户代理吗?看起来你可以在头部中设置用户代理(参见链接),但不确定如何编写语法。 - PeterB
1个回答

1

我个人会让Excel自己计算:

ActiveWorkbook.FollowHyperlink "https://www.google.com"

我无法测试这个在Mac上是否可用(但我不认为它会有任何问题)。
请注意,如果您想使用默认浏览器,您可能无法确保您甚至可以获得一个对象实例(即Chrome,Firefox,Opera等)。 我建议在浏览器中为用户显示,然后同时使用其他方法抓取相同链接的html。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接