Handling VBA macros and Office automation when moving to Collabora

Macros are disabled in Collabora Online, and COLEAT covers only part of Office automation on Windows. This page explains what maps, what does not, and how to inventory and test dependencies before cutover.

On this page

Handling VBA macros and Office automation when moving to Collabora: what changes first

Collabora Online opens macro-enabled Microsoft formats but disables macros online, so a .docm, .xlsm or .pptm file can be opened and edited in the browser without its VBA code running, according to the Collabora FAQ. Automation of Office from desktop applications is a separate decision. A Visual Basic line-of-business application that drives Microsoft Office through its object model is not moved by changing the document editor alone. On Windows, the Collabora OLE Automation Tool (COLEAT) can route those calls to Collabora Office, but that is a desktop change with its own testing. The effort is mostly inventory and redesign of dependencies, not file conversion. Start with two lists. The first is every macro-enabled file that users open, share or rely on, grouped by what the macro does: formatting helpers, data refresh, report generation, form validation or document-level automation. The second is every application, script or scheduled job that calls Office, including the Office version and the Windows account it runs under. For each macro, record whether it is still needed, whether the same result can be produced without VBA (for example, through a formula, a template field or a server-side process), and who owns the decision. Confirm with Collabora which macro behavior matters to your users before you rely on any workaround. The risks are concentrated in the second list. A macro that stops running online may fail silently in a way users notice only at month-end, and an automation call that quietly targets a different suite can produce output that looks correct but differs in layout or calculation. Plan a test run for each dependency against representative files, with documented expected results, before any cutover. Also confirm how COLEAT's API coverage matches the calls your applications make, since Collabora states that coverage is still being extended, and treat any missing call as a redesign item rather than an assumption.

Which macro and automation capabilities map to Collabora

This table sets each Office macro and automation capability in your current estate against its Collabora Online or Collabora Office equivalent, with the migration note for each. Read it as a starting point for your inventory: rows marked as not running online need a desktop or redesign decision, and COLEAT rows need each object model call checked against the COLEAT page before you commit.

Source capabilityCollabora equivalentMigration note
Macro-enabled documents (.docm, .xlsm, .pptm)Opened in Collabora Online, macros disabledCollabora Online opens macro-enabled Microsoft formats but does not run their macros in the browser. Identify which documents depend on macros and plan a desktop path or a macro-free replacement.
VBA automation of Office objects on WindowsCOLEAT with Collabora Office on WindowsCOLEAT wraps legacy Visual Basic applications so they call Collabora Office instead of Microsoft Office. API coverage is still being extended, so confirm each object model call against the COLEAT page.
Event-driven macros (open, save, close)Not supported in Collabora OnlineBrowser sessions do not run document event macros. Document which events your workflows rely on and move that logic to a server-side process or the application that hosts the document.
Custom forms and UserFormsNot supported in Collabora OnlineUserForms do not render in the browser. Plan a replacement form in your line-of-business application or a supported web form, and test users' data entry paths.
Office add-ins and COM add-insVaries by add-in, confirm with the vendorDesktop COM add-ins do not carry over to Collabora Office. Check each add-in's vendor for a Collabora or LibreOffice build, or confirm whether it needs replacing.
External data connections and ODBC or OLE DB queriesConfirm per data source and connectorRefresh behavior and credentials differ between Microsoft and Collabora. Test each connection on a sample workbook and record which refresh paths you need to keep.

How macro-enabled documents behave in Collabora Online

Collabora Online opens macro-enabled Microsoft formats, but it does not run the macros. Users can open a .docm, .xlsm or .pptm file in the browser and read and edit the content, yet the VBA logic stops working: buttons do nothing, custom ribbons and forms are absent, and any refresh or calculation that depends on a macro does not run. Users who expect a workbook to update itself on open will see stale values, and nothing in the interface will warn them that the logic is missing. The Collabora FAQ describes this behavior, so treat it as the baseline for every test you run, and confirm the current handling of each format in your own pilot before you plan around it.

To tell macro dependence apart from ordinary formatting, inventory the files first. Open each macro-enabled document in Collabora Online and in Microsoft Office side by side, then compare what changes. Layout, fonts, tables, charts and cell formulas that are stored in the file are formatting or data, and they usually survive. Content that appears only after a macro runs, such as generated tables, cleared inputs, validation prompts, or sheets that rebuild from a button, is macro dependence. Also check whether a file is macro-enabled only by its extension or actually contains a VBA project, since many .docx or .xlsx files carry no code at all. Record the owner, the users and the business process for each file that fails.

Do not delete or convert macro-enabled originals because other users still work in Office. A document that a browser user edits in Collabora Online may then be opened by a colleague in Microsoft Office, and the macros must still be present in the copy that colleague receives. Keep a master copy of each macro-enabled file, decide which version is the system of record, and agree how edits made in each environment get back into it. Ask your team to confirm how save and version behavior works for your file types in your Nextcloud or WOPI host, because that behavior determines whether a macro project survives a round trip.

Choosing a path for Visual Basic line-of-business applications

This path moves the business logic out of the document and into a server-side service or the line-of-business application itself. The macro stops being the place where rules run, and the document becomes data that the service reads, writes or converts. It is the most durable option because it removes the dependency on any office suite's automation model, but it is also the most work, since the logic must be specified, rebuilt and tested again.

  • Who changes: application owners and developers rewrite the logic, while the business owner signs off on the rules that the macro enforced.
  • Work involved: document each macro's inputs, outputs and side effects, then rebuild them as an API, batch job or service that does not require a running office suite.
  • Risks: subtle rules hidden in macros, such as formatting-driven calculations or undocumented edge cases, are often lost in translation.
  • Quote driver: the number of macros, their age and the number of documents they touch determine the effort more than the language used.
  • Confirm with Collabora: that the workflow no longer depends on macros running in the browser, since Collabora Online disables them.

Before choosing this path, confirm which workflows must keep running after cutover and which can be retired. Check whether the rebuilt logic can run on your existing platform without new licensing or hosting commitments.

What COLEAT does and where its limits are

COLEAT, the Collabora OLE Automation Tool, is a bridge for legacy Visual Basic line-of-business applications that automate Microsoft Office on Windows. It wraps the OLE Automation calls those applications make so they can talk to Collabora Office instead of Microsoft Office, and it traces the automation calls it sees. The tracing matters for planning: it shows you which calls your applications actually make, which is often different from what the original developers documented. COLEAT is a Windows desktop path. It does not give a browser session, Collabora Online or a WOPI host any VBA or automation capability, so applications that depend on it stay on Windows workstations with Collabora Office installed.

Collabora says API coverage is still being extended, so you cannot assume that a call working in one application will work in another or that every method your code uses is covered. Build an inventory of each VBA project, listing every Office object model call, property and method it uses, then run each one against COLEAT in a test environment that mirrors your workstation image. Record which calls succeed, which fail silently and which return different results. Ask Collabora for the current list of supported calls for your target release, and confirm it against your inventory, because the list changes as coverage grows. Treat any unsupported call as a blocker to resolve before cutover, either by changing the code, keeping that application on Microsoft Office or retiring it.

How to inventory, pilot and cut over macro dependencies

This sequence turns an unknown set of macros and Visual Basic applications into a list of decisions, each backed by test evidence. It ends with a cutover plan and a decommissioning record that the business owners have signed.

  1. Inventory macro-enabled files and VB applications

    Collect every macro-enabled Office file, VBA project and Visual Basic line-of-business application that touches document automation. Use file share scans, endpoint inventories and interviews with department leads to find them, and record the file type, location, last-used date and the people who run each one. The step is done when every item has a named business owner and a usage pattern, such as daily, monthly or only at year end.

  2. Classify each dependency by behavior

    Sort each item into one of a few groups: macros that only format or calculate inside the document, macros that read or write other files, applications that drive Office through automation calls, and items that can be retired. Collabora Online disables macros in the browser, so macro-dependent documents need a decision in this step, not a surprise at cutover. The output is a classification sheet that the owners review and agree to in writing.

  3. Build a representative test corpus

    Assemble a set of real documents and workflows from the inventory, including the awkward cases such as complex tables, tracked changes, embedded objects, and files that have been edited across Word, Excel and PowerPoint versions. Add the expected output for each test, which the owner signs off before testing starts. The corpus is ready when it covers every classification group and each owner has confirmed their cases are included.

  4. Pilot on Collabora Online and Collabora Office

    Run the corpus through Collabora Online in the browser, and through Collabora Office on Windows for any application that needs OLE Automation. Where COLEAT is chosen for a legacy Visual Basic application, test the automation calls it wraps and check the trace output against the expected results, because Collabora says API coverage is still being extended. Record each failure with the file, the step and the workaround. The pilot is complete when every case has a pass, a documented workaround or a retirement decision.

  5. Run a parallel period with both paths

    Keep the existing Office automation available while a pilot group uses the Collabora path for real work. Compare outputs for the same documents and track any user reports, support tickets and workarounds. Confirm with the owners that the results match what they need before the parallel period ends. The period closes when the failure log shows no open high-impact items for the workflows in scope.

  6. Cut over workflow by workflow

    Move each workflow to the Collabora path on its own date, starting with the lowest-risk items and ending with the line-of-business applications. Update user guidance, rollback steps and the support runbook for each group before its cutover. A workflow is cut over when its owner confirms in writing that it runs on the new path and the rollback steps have been tested.

  7. Decommission Office automation after sign-off

    Remove the old Office automation, macro dependencies and licenses only after the test evidence, pilot results and owner sign-offs are filed together. Keep a read-only archive of the original files and the test corpus so the decision can be audited later. The step is done when the decommission record lists each retired item, its approver and the location of the evidence.

Documented tools and paths for macro and automation work

Does Collabora Online run VBA macros inside documents?

No. Collabora Online opens macro-enabled Microsoft formats but disables macros online, according to the Collabora FAQ. Users can open the file, but the macro code does not execute in the browser editor. That makes the FAQ the first document to read when you start an inventory of macro dependencies. Confirm the behavior for your exact version with Collabora before you write user guidance, because the FAQ describes the product in general terms. In your inventory, check two things: whether anyone expects a button or report inside a shared file to run, and whether a macro calculates or validates data that people rely on. If either is true, that workflow needs a separate path, and browser editing alone will not cover it.

What is COLEAT and which problem does it solve?

COLEAT is the Collabora OLE Automation Tool. According to the COLEAT page, it wraps legacy Visual Basic line-of-business applications so they can talk to Collabora Office instead of Microsoft Office on Windows, and it traces the automation calls it receives. Use it when a Windows application drives Office through OLE Automation and that application must keep working with Collabora Office. Collabora says API coverage is still being extended, so some calls your application makes may not be supported yet. Treat the trace as a discovery aid: it produces a concrete list of calls to test. Confirm current API coverage with Collabora against that list before you commit to this path.

Does COLEAT bring macros into Collabora Online in the browser?

No. COLEAT works with Collabora Office on Windows, the desktop product, and targets applications that automate Office through OLE. It does not add VBA execution to Collabora Online, so a browser user who opens a macro-enabled file still gets the macro-disabled behavior described in the Collabora FAQ. Browser editing and desktop automation are separate decisions. A line-of-business application that depends on OLE Automation usually needs a Windows desktop path, while the browser path serves people who only read or edit documents. Ask Collabora whether the tool covers the methods your application calls, which Collabora Office versions it supports, and how it behaves when a call is not yet implemented.

Which Microsoft file formats does Collabora Online open and edit?

The Collabora Online product page lists OpenDocument formats and Microsoft formats including docx, xlsx and pptx, plus PDF, RTF, CSV and Visio files. A format list tells you what opens, not whether every feature in those files behaves the same. Macro-enabled variants follow the FAQ behavior: they open with macros disabled. Map every file type in your inventory to the list, then test representative files that use templates, form controls, tracked changes, pivot tables and macros. Compare the results with the desktop original. A workbook can open correctly and still calculate differently, so verify values, not only appearance.

How do we check which Collabora Online version to test against?

Check the Collabora Online release notes for the branch you plan to run and for its newest point release. The 25.04 release notes, for example, record that the 25.04 branch was first released on June 19, 2025, and that point releases continued into 2026, with 25.04.13 released on September 21, 2026. Your test results apply only to one build, so record the exact version string in the test plan and repeat key macro and automation checks after each point release. The same notes record security fixes, such as CVE-2026-23623 fixed in 25.04.7.5. Confirm with Collabora which build your support arrangement covers before you certify a workflow.

Can our own team inventory macro dependencies without outside help?

Most teams can do the inventory themselves, because the work is mostly reading, listing and testing. Start with every macro-enabled file, every Visual Basic application and every automation call those applications make. The cost is mainly staff time, a Windows test environment and representative data. Owners, usage frequency and the sensitivity of the data matter more than the raw file count, so rank the list before you test everything. An outside partner adds value when the list is long, the code is poorly documented or the testing needs Windows desktops and realistic data sets. Ask any partner for a written, fixed-scope proposal that names the deliverables, the systems in scope and what you must provide, such as access, sample files and named business owners.

What should a macro and automation test cover before cutover?

Cover three areas, each with its own pass criteria:

  • Every macro-enabled file opens in the browser, shows the expected content, and is documented with the macro behavior users will see.
  • Every automation call in the trace is either supported by COLEAT for the target Collabora Office version or has a documented replacement.
  • Output from each workflow, including calculated values, exported PDFs and generated letters, matches the desktop baseline.

Record the Collabora Online build, the Collabora Office build and the Windows version for each run. Re-run the suite after each point release and after any change to the workflow.

What drives the effort of macro and automation migration

Effort in a macro migration depends less on the number of documents than on how many automation paths depend on Office behavior. The drivers below connect the file inventory, the VB applications, the platform mix and the sign-off process, so a team can see where time and cost will concentrate before committing to a scope.

Macro-enabled files and their owners

Count the macro-enabled Microsoft files (.docm, .xlsm, .pptm and similar) and identify who owns each one. Effort rises when macros sit in shared templates used by many teams, and when owners have left the organization. Effort falls when most macros are in a small set of files with named owners who can confirm intended behavior. Collabora Online opens these formats but disables macros online, so each file needs a decision: rewrite the logic, keep it in a desktop workflow, or retire it.

Number and complexity of VB applications

Line-of-business applications written in Visual Basic that drive Office through automation are usually the costliest part. Effort rises with the number of applications, the number of Office calls per application, and any use of undocumented or version-specific behavior. Effort falls when applications are small, well documented and already isolated behind a clear interface. Ask each application owner for source code, build environment and a list of the Office objects they touch.

Object model coverage in COLEAT

COLEAT wraps legacy Visual Basic applications so they can call Collabora Office on Windows, and Collabora states that API coverage is still being extended. Effort rises when an application relies on object model calls that are not yet covered, because each gap needs a code change, a workaround or a different tool. Run the tracing output against a representative workload early to find those gaps before the schedule is set.

Windows and browser user base

Automation through COLEAT runs on Windows desktops, while browser editing with Collabora Online runs in any supported browser without VBA. Effort rises when a large share of users depend on desktop automation that must keep working during transition. Effort falls when most automated workflows can move to server-side processing or browser-based forms. Map each workflow to the platform where its users work, and note which ones need both.

Testing and sign-off requirements

Every macro or automation path needs test documents, expected outputs and a named business owner who signs off results. Effort rises with regulated reporting, financial calculations, or documents that must match signed originals. Effort falls when test cases already exist and outputs are reproducible. Agree the acceptance criteria and the people who approve them before the first test run, so disagreement does not delay cutover.

Retained Office licenses during transition

Teams often keep Microsoft Office on some desktops while automation is rebuilt, which extends license cost and support work. Effort and cost rise with the length of the parallel run and the number of users who need both environments. Confirm with your licensing contact which agreements allow this, how long they run, and whether Collabora Office licenses are needed for the users who move first. Plan the removal date as part of the sign-off, not after it.

Questions buyers ask about macros and COLEAT before cutover

Will VBA macros run in Collabora Online?

No. Collabora Online opens macro-enabled Microsoft formats, but it disables macros in the browser, so a macro-enabled workbook or document can be viewed and edited there without its automation running. Any process that depends on a macro needs a decision before cutover: rewrite the logic, move it to a server-side or desktop route, or retire it. Confirm the exact behavior for each file type you hold, because a document can open and look correct while the macro it contains is inert. Collabora's FAQ at Collabora Online FAQs is the place to check the current position.

Does COLEAT cover every Office automation call my application makes?

Not necessarily. COLEAT, the Collabora OLE Automation Tool, lets legacy Visual Basic line-of-business applications talk to Collabora Office instead of Microsoft Office on Windows, and it traces the automation calls it receives. Collabora says its API coverage is still being extended, so the practical test is to run your application's real call sequence against it and list every call that is unsupported or behaves differently. Ask the vendor for the current coverage list and compare it with the trace from your own test runs. See COLEAT for the tool's stated scope.

How much effort does a macro and automation inventory take?

Effort depends on how many applications call Office, how many macros exist, how well documented the code is, and whether the original authors are still available. The main drivers are the count of distinct automation entry points, the number of shared templates that many files depend on, and the amount of undocumented business logic. A useful inventory records each macro, its trigger, the data it reads and writes, its owner and its users. Ask any partner for a written inventory method and a deliverable format before agreeing to a fixed fee, since an inventory that stops at file counts will miss the calls that matter.

Can our own team run the macro and COLEAT inventory?

Yes, many teams can, provided someone can read the VBA source, run the applications in a test environment and record their Office calls. The team needs access to the code repositories, a Windows test machine with the relevant Office and Collabora Office versions, and time from application owners to confirm what each process is for. Where the team lacks VBA or Windows automation skills, or where the code is poorly understood, a partner may be the faster route. Decide early who signs off each dependency, since an inventory without business owners tends to leave the riskiest processes unclassified.

What does the team need to provide for this work?

The work needs a complete list of applications and file shares, read access to VBA source and templates, a Windows environment that matches production as closely as possible, sample documents that reflect real use, and named owners for each business process. It also needs a test plan that covers both the document fidelity checks and the automation calls. Without these inputs, testing shows only that the software starts, not that the process still works. Ask any partner to confirm which of these inputs it expects you to supply and which it will prepare.

How long does testing dependencies before cutover take?

Duration is set by the number of dependencies to test, the number of owners who must review results, and how many test cycles each fix needs. Each dependency generally needs at least one run that records the expected output, one run on the target platform, and a comparison of the two. Shared templates and long approval chains add cycles. Ask for a timeline tied to a named list of dependencies, and ask what happens when a dependency is found to be unsupported, because the answer often changes the schedule more than the testing does.

What should we ask a partner for in a written scope?

A written scope should name the inventory method, the list of applications and macros in scope, the test environments, the COLEAT coverage check, the document fidelity tests, and the deliverables with their format. It should also state what is excluded, such as rewriting business logic or changing the source applications, and who decides how an unsupported call is handled. Ask how the scope handles new dependencies found during testing and how changes are priced. DeployOpen works from a fixed-scope written agreement agreed before work starts, so the scope document is where these points should be settled.

How DeployOpen works on this

DeployOpen starts with an inventory of the macro-enabled documents and Visual Basic applications your teams depend on, then decides for each one whether it moves to browser editing, stays on Windows desktops with Collabora Office, or is retired. We build the replacement path, test it against your real documents and workflows, and hand over the records your team needs to run it after go-live.

How we scope

  • We inventory macro-enabled files, owners, usage frequency and the business process each macro supports.
  • We classify every dependency as browser replacement, desktop automation through COLEAT, or retirement, and record the reason.
  • Engagements are fixed-scope, with the dependency list, deliverables and timeline agreed in writing before work starts.

How we build

  • We rebuild required logic outside macros where practical and document each change against the original behavior.
  • For Windows applications that need OLE Automation, we set up COLEAT with Collabora Office and trace calls to confirm coverage.
  • We test each workflow with representative documents, including macro-enabled Microsoft formats, and log every gap found.

How we hand over

  • You receive the dependency register, classification decisions, test cases, traces and results for each application.
  • We document known gaps, unsupported API calls and the owners responsible for accepting each residual risk.
  • Runbooks cover how to update COLEAT configuration, rerun tests and add new documents to the register.

How we support

  • Ongoing support, upgrades and continuous testing are available as a retainer after handover.
  • Retesting after each Collabora Online or COLEAT update is scoped with your team as part of the support plan.
  • We review newly discovered macro or automation dependencies with your owners before they reach production users.

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.