Best WebView2 ActiveX for VBA? How to Choose — 2026 Guide
If you need to embed a modern Chromium browser inside Excel VBA, Microsoft Access, VB6, or another COM host (for example to run TinyMCE, AG Grid, Chart.js, or PDF.js), there are only a few kinds of option. This guide walks through them — including Microsoft's own — and suggests where each fits, by persona.
1. Why this guide exists
Most VBA developers who end up here want to add something specific — a rich text editor, a data grid, an interactive chart, a PDF viewer. This guide covers which tools can deliver that inside Access, Excel, or VB6, and where each one fits.
Microsoft still supports the old WebBrowser control (MSHTML/WebOC) through at least 2029 but recommends WebView2 for new development. Microsoft supports the WebView2 SDK for Win32 C/C++, .NET (Windows Forms, WPF) and WinUI; it doesn't list VBA, VB6 or Office as hosts and doesn't ship an ActiveX control. Access for Microsoft 365 and Access 2024 have Microsoft's WebView2-based Edge Browser Control; Microsoft offers no equivalent for Excel or Word UserForms or for VB6.
That leaves developers of Excel, Word and VB6 applications, and of older Access versions, looking for another route. This guide answers the question they actually search for: "What is the best WebView2 ActiveX / COM control I can use from VBA?" Answers below. I'm the developer of one of the options — I'll tell you when it is and is not the right pick.
Short answer. On Access for Microsoft 365 or Access 2024, start with the built-in Edge Browser Control if its documented methods (Navigate, Refresh, ExecuteJavascript, RetrieveJavascriptValue) cover your task. For Excel or Word UserForms, VB6, other Access versions, or when you need DOM helpers, messages from the page to VBA or printing to PDF, LiteView2 is a commercial WebView2 ActiveX/COM control that ships today.
2. How to evaluate a WebView2 ActiveX control
Before comparing products, decide which of these matter for your project. The host and the deployment model narrow the choice fastest.
Mandatory criteria (almost everyone needs these)
- Host compatibility. Where do you need the browser to run? Access only? Excel? VB6? Multiple hosts in the same product?
- Bitness. 32-bit VBA, 64-bit VBA, or both? Some hosts are still 32-bit; some clients have moved to 64-bit; ARM64 is increasingly relevant.
- Programmable surface. Do you need DOM access from VBA? Execute JavaScript with a return value? Handle navigation, downloads, popups, authentication, cookies? Or just point-and-render?
- Rendering engine. A current Chromium-based engine, such as the Microsoft Edge WebView2 Runtime, supports modern HTML, CSS and JavaScript. The old WebBrowser control uses the Internet Explorer 11 engine (MSHTML), which many modern websites no longer support.
- Deployment model. Will your end-users have admin rights to register the control? If not, you need registration-free deployment.
- Licensing for client work. If you build apps for clients, you need redistribution terms that don't charge per-deployment.
Common but optional criteria
- Print and PDF. Many VBA apps need to print rendered HTML or save it as PDF. Check whether the control exposes both.
- OAuth / auth popups. If you embed third-party services (Power BI, Microsoft 365, Google), you'll hit OAuth flows that require popup window handling.
- Local file / virtual host serving. Hosting a small HTML app inside an Access database without writing temp files needs virtual host name mapping.
- JSON parsing inside VBA. If you call REST APIs, a native JSON parser saves you writing your own.
- Multiple browser instances. Some Excel and Access apps need several browsers in one workbook or database, each with isolated state. Pool management matters for performance.
Trust criteria (often overlooked)
- Vendor longevity. If the vendor disappears, your perpetual license should keep working. Check whether activation is online-only.
- Support model. Email a presales question. How fast did you get a substantive reply? That same speed is what you'll get post-purchase.
- Visible changelog. Is the product still being updated? When was the last release?
- Reference customers. Can you talk to one before buying?
3. The options
LiteView2
When it fits:
- You build production Access or Excel applications and need a real browser inside a form.
- You ship apps to client end-users without admin rights and need registration-free deployment.
- You need DOM access, JavaScript execution with return values, printing, file downloads, cookies, or OAuth popups from VBA.
- You're maintaining a VB6 codebase and need a modern browser without rewriting the whole app.
When it doesn't:
- Your app is pure .NET WinForms/WPF — use the official WebView2 SDK directly; LiteView2 adds a COM layer you don't need.
- Your app runs on Access for Microsoft 365 or Access 2024 and the built-in Edge Browser Control's documented methods cover your task.
- You have hard procurement constraints that prohibit small-vendor purchases. (LiteView2 is a one-developer product. See the About page for the honest trade-offs.)
Licensing: Developer $99 early-bird (standard $199), Site $699, Enterprise $1299. Royalty-free redistribution at every tier. Permanent license, one-time payment. See full pricing →
Trial: 30 days, fully functional, no feature lock, no watermark.
Microsoft Edge Browser Control (built into Access) Included with Access
When it fits:
- You work only in Access for Microsoft 365 or Access 2024.
- Its documented methods cover your task, for example showing a page and running or reading JavaScript.
When it doesn't:
- You need more than its documented surface, for example events for messages from the page, downloads or authentication. Check Microsoft's documentation for your build.
- Your app must run on an Access version the control does not apply to.
- Your app is in Excel, Word or VB6 — the control is part of Access.
Cost: included with Access for Microsoft 365 and Access 2024.
Microsoft WebView2 SDK For .NET and C++
When it fits: .NET or C++ applications where you control the entire stack.
When it doesn't: VBA and VB6. Microsoft doesn't ship an ActiveX control for WebView2, and its WebView2 team has said it has no plans to.
Cost: free.
Legacy WebBrowser control / Shell.Explorer / MSHTML Legacy engine
When it fits: maintaining a legacy app that was built around it and that you cannot rewrite — and that you don't ship to end-users who reach modern websites.
When it doesn't:
- New development: Microsoft recommends WebView2 for future app development.
- Pages that need current web features — many modern websites no longer support the IE engine.
- Services you embed from third parties — many of them no longer support Internet Explorer.
See WebBrowser control replacement for VBA → for the migration story.
Chromium-based .NET libraries For .NET applications
When they fit: .NET applications that want to ship their own Chromium build rather than use the WebView2 Runtime.
When they don't: VBA and VB6 hosts, unless you write and maintain your own COM-callable wrapper.
Cost: generally free / open-source.
Other commercial Chromium-based ActiveX controls Check current status
When they fit: you have a long history with a specific vendor, a stable existing integration, and the vendor is still active and responsive.
When they don't:
- The product has had no recent release — check before relying on it for new work.
- The control bundles its own Chromium runtime and the footprint matters to you.
- You want the Microsoft Edge WebView2 Runtime specifically rather than a bundled Chromium build.
What to verify before buying: last release date, response time on a presales email, redistribution license terms, whether the activation is online-only.
Open-source community projects Open source
When they fit: personal projects, prototypes, learning experiments where you can read the source and fix problems yourself.
Check before production use: who supports it, the license terms for shipping it to clients, how stable its API is across updates, and how it deploys without admin rights.
4. A checklist to apply to every option
Apply the same checklist to any option you consider, using that option's own documentation. For LiteView2, the documented answers are:
| Criterion | LiteView2 (documented) |
|---|---|
| Hosts | Excel, Access, Word, VB6 and other COM hosts, x86 and x64 (see Compatible hosts) |
| JavaScript with a return value | ExecuteScript, ExecuteScriptWithResult |
| DOM from host code | GetElementValueById, SetInnerHtmlById and more |
| Page → VBA messages | WebMessageReceived event, AddHostObjectToScript |
| Recordset to the page | PushRecordset |
| Print to PDF | PrintToPdf |
| Deployment | Registered or registration-free |
| Redistribution | Royalty-free at every tier |
5. Recommendation by persona
If you only read one section of this guide, read this one.
Start with the built-in Edge Browser Control if you are on Access for Microsoft 365 or Access 2024 and its documented methods cover your task. Consider LiteView2 when you also need older Access versions, other hosts, DOM helpers or messages from the page to VBA.
Consider LiteView2 — the Edge Browser Control is Access-only and the WebView2 SDK targets .NET and C++, so a COM control is the practical route to WebView2 in an Excel UserForm.
Consider LiteView2 — you are in the same position as the Excel persona: Microsoft doesn't list VB6 as a WebView2 host.
Pick: official Microsoft WebView2 SDK — not LiteView2. If you are writing C# / VB.NET native code, the official SDK gives you the same engine with no COM layer between you and the API. Use LiteView2 in .NET only when you need to expose the control to a COM host (e.g., an Office VSTO add-in that also has a VBA macro talking to the browser).
Either route — Delphi can call the WebView2 SDK directly. LiteView2 via COM is an option when you want the same API across your COM projects.
Reconsider whether you need this — if your Python app is standalone, look at Python-native browser-embedding libraries first; they were built for Python and have larger communities. Use LiteView2 from Python only if you specifically need a COM control because your Python is being orchestrated by an Office host or a legacy COM application.
Reconsider whether you need this — PowerShell scripts rarely embed a browser. If you need scripted browser automation, a dedicated automation framework is the better tool. If you need a GUI form with a browser inside it from PowerShell, LiteView2 will work, but you're likely solving the problem with the wrong tool.
Pick: LiteView2 Site or Enterprise license — if you build Access/Excel apps for multiple clients, the Developer license technically covers your work but the Site/Enterprise licenses cover your entire team without per-developer math. The royalty-free redistribution at every tier means your clients deploy without per-end-user fees.
6. Questions to ask of any option
Whichever option you consider, commercial or open source, ask:
- Redistribution. Can you redistribute it to clients, under written terms?
- Runtime updates. Who fixes a break after a WebView2 Runtime update, and how fast? Microsoft notes that the Evergreen Runtime “updates automatically without requiring any action from you” and advises testing against the preview channels of Microsoft Edge “to catch app-specific regressions before WebView2 changes ship in Edge Stable.”
- API stability. Does its API stay compatible across releases?
- Deployment. Does it deploy on 32-bit and 64-bit hosts and on locked-down machines?
Open-source projects can be a good fit when you can maintain the code yourself.
7. FAQ
Does Microsoft ship a WebView2 ActiveX control?
No. Microsoft supports the WebView2 SDK for Win32 C/C++, .NET (Windows Forms, WPF) and WinUI; it doesn’t list VBA, VB6 or Office as hosts and doesn’t ship an ActiveX control, and its WebView2 team has said it has no plans to. Access for Microsoft 365 and Access 2024 include the Edge Browser Control, whose documented VBA surface is Navigate, Refresh, ExecuteJavascript and RetrieveJavascriptValue. It is available in Access only.
Which WebView2 ActiveX control should I use for VBA?
Match the option to your host and the API you need. On Access for Microsoft 365 or Access 2024, try the built-in Edge Browser Control first. For Excel, VB6, older Access versions, or when you need DOM helpers and messages from the page to VBA, LiteView2 is a commercial WebView2 ActiveX/COM control with registered and registration-free deployment and royalty-free redistribution.
Can I use a Chromium-based .NET library from VBA?
Not directly. Such libraries are not registered as COM/ActiveX controls, so VBA hosts cannot create or host them without a custom COM-callable wrapper.
Is the legacy WebBrowser control still usable in VBA?
Yes. It still loads, and Microsoft still supports the MSHTML engine and the WebBrowser control through at least 2029. It uses the Internet Explorer 11 engine, so many modern pages and scripts do not work in it, and for future app development Microsoft recommends WebView2.
Should I build my own WebView2 wrapper?
You can: the WebView2 SDK is free, and Microsoft describes the WebView2 control as based on the Component Object Model (COM). Plan for substantial COM/C++ work and for maintenance across WebView2 Runtime updates, 32-bit and 64-bit hosts and registration-free deployment. Building makes sense when you have that engineering capacity for the long term.
How do I evaluate vendor longevity for a one-developer product?
Email the vendor a presales question and time the reply. Look at the public changelog or releases page — is the product still shipping? Ask whether the license is perpetual and whether activation is online-only. With LiteView2 specifically: the license is permanent, activation works offline, and the developer responds personally within one business day (see the About page).
Ready to evaluate LiteView2 in your actual project?
30-day fully functional trial. The full documented API surface — hundreds of methods and dozens of events — plus both registered and registration-free modes. No feature lock, no watermark, no credit card.
Download free 30-day trialHave a specific evaluation question? Email imran@imranosoft.com — replies within one business day.