LiteView2 works in VBA (Excel, Access, Word, Outlook, PowerPoint, Visio, Project), VB6, VB.NET, C#, C++, Delphi, Python, PowerShell, AutoIt — and any COM host.
Microsoft's Edge Browser Control is documented as available in Access desktop databases, offering basic navigation. LiteView2 is a commercial WebView2-based ActiveX control that works in every COM host — not just Access — and exposes 270+ methods, 59 events, full DOM helpers, a JavaScript-to-VBA bridge, and a standalone JSON engine.
30-day commercial trial · No telemetry · Same APIs in trial and production
The official Microsoft Support article "Use the Edge browser control on a form, report, or web page" describes the control as available "in Access desktop databases." The documented VBA surface is: Navigate, Refresh, ExecuteJavascript, and RetrieveJavascriptValue methods, plus a LocationURL property and a DocumentComplete event.
| Microsoft Edge Browser Control (per Microsoft documentation) |
LiteView2 | |
|---|---|---|
| Hosts supported | "in Access desktop databases"Microsoft Support | All COM hosts: Excel, Access, Word, Outlook, PowerPoint, Visio, Project, VB6, .NET, C++, Delphi, Python, PowerShell, AutoIt |
| VBA methods exposed | Navigate, Refresh, ExecuteJavascript, RetrieveJavascriptValue — 4 documented methods | 270+ methods across 8 interfaces (ILiteView2Ctrl, IBrowserPool, ILV2Json, and more) |
| VBA events exposed | DocumentComplete — 1 documented event | 59 events: navigation, DOM ready, web message, downloads, authentication, process lifecycle, and more |
| DOM access from VBA | "the lack of the Document object is a huge loss – besides easy manipulation of the page it also prevents sending events back to the Access/VBA code"devhut.net, Microsoft Access: Modern Web Browser article | GetElementValueById, SetInnerHtmlById, SetElementValueById, GetTextBySelector, ClickElementBySelector, and more |
| JavaScript execution | ExecuteJavascript (fire and forget); RetrieveJavascriptValue (return a value) | ExecuteScript (return value), ExecuteScriptAsync, ExecuteScriptWithResult (structured result + error), ExecuteScriptWithArgs, CallJsFunction |
| JavaScript → VBA communication | Not documented | WebMessageReceived event, AddHostObjectToScript (call VBA methods directly from JS), RegisterVbaCallback |
| JSON engine | Not documented | Standalone C++ JSON parser (ILV2Json) — BuildJson, JsonGetValue, JsonSetValue, JsonMerge, JsonToRowArray, and more. No WebView2 required. |
| Registration-free deploy | Built-in — no setup needed | Reg-free mode: copy OCX next to .accdb, paste modLV2Pool once, no admin rights |
| Local HTML files | "local PDFs have been confirmed as a known issue"devhut.net, Microsoft Access: Modern Web Browser article | SetLocalContentRoot maps any local folder to https://lv2.local/ — full local file support with proper HTTPS origin |
| Backwards compatibility | "existing WebBrowser Control uses have to be completely redesigned to run in the new EdgeBrowser"devhut.net, Microsoft Access: Modern Web Browser article | Also a new API — MSHTML code migrates to WebView2-style calls. Forms, business logic, and data layer stay unchanged. |
| Multiple browsers on one form | One control per form (design-time OCX) | IBrowserPool: unlimited browser instances, each addressed by index. Runtime-created, no design-time controls needed. |
| Availability | "currently BETA or Current Update Channel only and not backwards compatible"access-programmers.co.uk community thread | Stable commercial release. Works on Office 2013–2024 and Microsoft 365. |
| Commercial support | Microsoft general support (not specific to this control) | Dedicated commercial support: bug triage, signed releases, enterprise license terms |
The Microsoft Edge Browser Control wins when: you only need basic page navigation in an Access form, you are on Microsoft 365 Current Channel, you need zero-setup deployment, and you do not need DOM access, JavaScript-to-VBA callbacks, or any host other than Access. We concede this clearly — wrong-fit traffic wastes everyone's time.
The capabilities the Edge Browser Control doesn't expose, in working VBA code:
' DOM read — GetElementValueById (not in Edge Browser Control)
Dim email As String
email = m_lv.GetElementValueById("user-email")
' DOM write
m_lv.SetInnerHtmlById "status-label", "<b>Saved!</b>"
' JavaScript → VBA (not in Edge Browser Control)
' JS side: chrome.webview.postMessage({action:"save", id: rowId})
' VBA side:
Private Sub m_lv_WebMessageReceived(message As String, source As String)
If InStr(message, """save""") Then SaveRecord message
End Sub
' Built-in JSON (not in Edge Browser Control)
Dim j As Object
Set j = CreateObject("LiteView2.Json")
Debug.Print j.GetValue(message, "$.id")WebView2 is Microsoft's Chromium browser engine. The Edge Browser Control is a simplified Access-only form control built on it, exposing basic navigation only. LiteView2 is a full-featured ActiveX/COM wrapper around WebView2 that works in all COM hosts and exposes 270+ methods.
Not via the Edge Browser Control — it has no Document object. LiteView2 provides 10+ DOM helper methods (GetElementValueById, SetInnerHtmlById, WaitForElement, ClickElementBySelector, GetTextBySelector, and more) that reach into the page without needing JavaScript round-trips for simple operations.
With LiteView2: m_lv.ExecuteScript "myFunction(data)" runs JavaScript and returns the result as a VBA String. ExecuteScriptWithResult also returns success/failure and any exception message. With the Edge Browser Control, ExecuteJavascript fires without a return value; RetrieveJavascriptValue returns a string.
Yes. A single LiteView2 license covers the developer — not per-host or per-application. Use the same OCX in Excel, Access, Word, VB6, or any other COM host.
270+ methods. 59 events. DOM access. JSON engine. Free 30-day trial.
Download free 30-day trialSee also: Replace the WebBrowser Control · WebView2 ActiveX for VBA · Deploy without admin rights · Reg-Free Mode deep dive