在使用选项显式(excel-vba)时如何打开Microsoft HTML对象库引用?

我有一个模块,查找一个网站,并做了一堆事情。 在清理代码时,我添加了Option Explicit标签,并停止了编译。

它在下面一行遇到了麻烦

dim objHTML As htmldocument

我跟踪了这​​个问题,这是因为我在不同的计算机上,而且Microsoft HTML对象库引用没有打开。

所以问题是,如何打开使用vba的Microsoft HTML对象库参考,以便仍然可以编译使用选项显式?

这被称为“早期绑定”,您必须包含非默认的Microsoft HTML对象库引用。 通过进入VBE并转到工具►参考,然后findMicrosoft HTML对象库,并在它旁边勾选。

此参考随VBA项目一起进行,并且在另一台计算机上使用工作表不会删除参考。 你可能从另一个VBA项目(或像SO这样的方便的站点)获得了一些代码,并将其粘贴到你的新项目中。

不过,你可以使用“后期绑定”来使用相同的东西。 这是用VBA的CreateObject函数来完成的,它为你创build了具有自己文档的IE对象。 你只需要知道要创build什么对象。

 Dim objIE As Object, objHTML As Object Set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate2 "https://stackoverflow.com/questions/38164172/option-explicit-with-htmldocument" Do While objIE.busy Or objIE.readystate <> 4: DoEvents: Loop Set objHTML = objIE.document Debug.Print Left(objHTML.body.innertext, 1024)