One of the most popular pages on this site shows code for automating Internet Explorer. However I have only tested the code in Excel XP/2003. The purpose of this post is to credit a gentleman named Durand Sinclair who, using Excel 2007, pointed out to me that the name of the IE object library in Excel 2007 is actually called "Microsoft Browser Helper" (click Tools>References in the VBE). Once you select the checkbox, exit the dialog box and re-enter it, the name changes to "Microsoft Internet Controls".
If anyone else would like to verify this behavior in Excel 2007 and let me know, I would be grateful to hear it.
Thanks Durand!
–JP
These references are not part of any Office library, but show all possible libraries installed on a computer. These may or may not be appropriate for a version of Office.
Microsoft Internet Controls (C:\Windows\system32\shdocvw.dll) is different from Microsoft browser Helpers (C:\Windows\system32\browseui.dll). The former contains the Internet Explorer interface, the latter seems more related to handling of multimedia content.
I'm getting the impression that not much has changed in Excel 2007 (programmatically), other than the drastic user interface changes. Since I don't have a copy I'm not able to verify. Thanks Jon.
I have excel 2003 at work, and 2007 at home. I found that Microsoft Internet Controls wasn't automatically in my reference library in 2007, so I had to browse to C:\Windows\system32\shdocvw.dll and add it. After that, everything worked perfectly.
Here is the Excel 2007 Microsoft Internet Controls reference of file details.
Location: c:\windows\system32\ieframe.dll
If you're only trying to download a file from the Internet, you can do so without the costly overhead of automating IE.
There's an API called URLDownloadToFile you can use to download a file from the Internet to your local computer: URLDownloadToFile.
You can also use a web query, see Refresh Web Data into Excel Every Minute for assistance. The exact process depends on your Excel version.