Like the title asks, Certain tools I use rely on VBA code with Internet Control to web scrape and control IE pages. With the IE11 end of life coming next year does anyone have any understanding on how that would effect Internet Control in VBA or if it will still function? Trying to figure out if we need to accelerate a change into another language.
Edit: In my research I found an article showing a windows build with the sunset already in place. No IE installed and the VBA Internet Controls function will not launch IE. This is the only thing I've seen about it but I'd love to know if anyone has experience with this?
CodePudding user response:
It won't magically disappear but it won't ever be updated again. It might also be absent from future versions of Windows, like you have noticed. If you rely on this code you will need to find a way to install IE on machines where it isn't installed. I would not want to be in that position. Running EOL libraries like this opens you up to potential security and reliability concerns. You want to have a plan B in the works before you suddenly need it.
The new web browser in Windows (Edge) is found in an object called Microsoft.Web.WebView2
or Windows.Web.Winmd
which are not COM visible. There is an open question about that
If you make an office addin solution in VB.NET or C# then you can use this new WebView. You could make a command line tool that is called from Excel, and returns results to a file, like CSV.
Ultimately, you're better off using the right tool for the job. You can still process the data in Excel but the actual data collection should be done by a modern web scraper or a VBA library.
CodePudding user response:
From the official blog, Internet Explorer 11 desktop application will be affected by IE 11 retirement. It also says:
Both WebOC and the MSHTA app will continue to be supported as they rely on the MSHTML engine which is unaffected by this announcement. If you have a custom or third-party app that relies on the MSHTML platform, you can expect it to continue to work.
But if you use some code like Navigate2
and Visible
to operate the Internet Explorer browser (Internet Explorer 11 desktop application), it won't work and it won't open IE browser.
CodePudding user response:
Out of scope at the time of this announcement (unaffected):
Internet Explorer mode in Microsoft Edge Internet Explorer platform
(MSHTML/Trident), including WebOC Internet Explorer 11 desktop application on: Windows 8.1 Windows 7 Extended Security Updates (ESU)
Windows Server SAC (all versions) Windows 10 IoT Long-Term Servicing
Channel (LTSC) (all versions) Windows Server LTSC (all versions)
Windows 10 client LTSC (all versions)
My company has quite a few web scraping apps which use IE. If we could have switched them to Selenium or Python, we would have.