Case study: Management accountant, 10-year XLSM workbook, macro loss during cloud migration
When Marcus joined a mid-sized logistics firm as a management accountant, he inherited something rare: a working Excel model. Not a simple VLOOKUP spreadsheet — a fully automated XLSM workbook built over a decade by his predecessor, containing 23 VBA macros that handled everything from intercompany cost allocations to month-end journal generation.
It worked. It ran reliably. And Marcus knew better than to touch it unnecessarily.
That changed when the company migrated to Microsoft 365. IT issued a directive: all shared files needed to move from the legacy on-premises server to SharePoint. Marcus uploaded his XLSM workbook without incident. But when he needed to send it to an external auditor, he ran into SharePoint's external sharing restrictions — and the IT-approved workaround was to export the file through the company's file conversion proxy.
What downloaded on the other end was an XLSX. All the formatting was intact. The data was correct.
Every single macro was gone.
Marcus describes the moment he realised: "I opened the file to run the month-end allocation script — the one that usually takes about 8 seconds — and nothing happened. I went to the Developer tab to check the macros. Empty. The module was there but there was no code in it."
He'd lost 23 macros. Some were simple formatting routines. Others were critical: a 400-line allocation engine that distributed intercompany costs across 14 cost centres using rules embedded in a hidden worksheet. That one had taken his predecessor three months to build.
The conversion proxy had silently stripped every VBA module during the XLSM → XLSX export. No warning. No log. The file looked fine.
Marcus spent two hours searching for a way to undo the conversion. There wasn't one. His only backup was a version from six weeks prior — missing three months of incremental improvements to the allocation logic.
"The thing that frustrated me most," he says, "was that I couldn't find a single converter that warned you this would happen. You just upload, convert, and find out later."
He posted in the Microsoft Community forum. The response — upvoted by over 800 people — confirmed the problem was by design: "Saving an Excel workbook with macros from the xlsm format to the xlsx format, the macros will be removed and will no longer function."
Before finding a solution, Marcus worked through the standard approaches:
Recovery software: Three tools scanned the XLSX file for recoverable data. None found VBA modules. Once stripped during conversion, there's no recovery path — macros don't live in the worksheet data.
The six-week-old backup: He restored it and began manually comparing it to the current file to identify which macro changes were missing. After four hours, he had a partial picture but still couldn't reconstruct the full allocation engine logic — the changes had been incremental, undocumented, and he hadn't written the original code.
Rebuilding from scratch: He estimated 40+ hours to recreate the allocation macro from business logic alone, without the original code to reference. The month-end reporting deadline was 9 days away.
Marcus found the Macro-Safe Converter Launch Kit through a search for "xlsm macro preservation tools" — specifically the keyword matrix in the kit that identified which converters handled VBA preservation correctly and which stripped macros silently.
The kit's comparison analysis identified three tools that genuinely preserved macro code during conversion, ranked by reliability and format support. More importantly, it documented why generic converters fail: the LibreOffice-based conversion pipeline most online tools use treats VBA modules as non-essential metadata during OLE compound document restructuring.
Armed with that knowledge, Marcus:
1. Located the original XLSM on his laptop's local sync cache — a copy from 4 days before the problematic conversion, not 6 weeks 2. Used a macro-safe conversion path identified in the kit to produce an auditor-safe output without stripping the VBA 3. Recovered 19 of 23 macros intact; the remaining 4 were recreated in under 3 hours using the recovered code as reference
Total recovery time: 11 hours instead of the estimated 40+.
"The kit wasn't just a converter — it was a map. It told me exactly what had happened technically and what my options actually were. I didn't have to guess."
Marcus's near-miss triggered a policy review in his finance team. He presented his findings to the IT and finance directors, using the competitive analysis from the kit to show that macro loss during conversion was a documented, widespread problem — not a one-off technical glitch.
The result: the team now maintains a standard operating procedure for XLSM files shared externally:
Marcus's situation is not unusual. The Microsoft Community forum thread he found has been viewed over 47,000 times. The same problem appears across Reddit's r/excel, the MrExcel forums, and Aspose's developer community.
The pattern is consistent: someone converts an XLSM to another format using a trusted, well-known service — CloudConvert, Zamzar, SmallPDF, or a corporate file proxy — and discovers after the fact that the macros are gone. There is no recovery path. The only options are rebuilding from source or finding a backup.
The solution is upstream: choose a conversion workflow that explicitly preserves VBA modules before you convert. The Macro-Safe Converter Launch Kit documents those workflows in detail — including which tools are safe, which silently strip macros, and how to set up a conversion policy for teams managing macro-heavy Excel environments.
Can I recover macros from an XLSX file after they've been stripped? No. Once VBA modules are removed during format conversion, they cannot be recovered from the output file. Recovery requires a backup of the original XLSM, or the original source code documented elsewhere.
Why do major converters like CloudConvert and Zamzar strip macros? They use generalised conversion pipelines (typically LibreOffice-based) that treat VBA modules as non-essential metadata. Supporting macro preservation for millions of users also creates security and liability concerns — macros can contain executable code.
What is the safest way to share an XLSM file externally without losing macros? Share the original XLSM with appropriate permissions (password protection, restricted editing) rather than converting to XLSX. If PDF output is required, use a PDF export that retains the XLSM source file separately.
How long does it typically take to rebuild complex VBA macros from scratch? For simple routines (10–50 lines): 1–3 hours. For complex automation engines (200–500 lines with business logic): 15–40 hours, assuming the underlying business logic is documented. Undocumented macros often require reverse-engineering from observed behaviour — multiply by 2–3x.
This case study was compiled from interviews with members of the Macro-Safe Converter community and validated against documented patterns in Microsoft Community forums, MrExcel, and Aspose developer discussions. Tool performance figures are based on tested conversion outcomes documented in the Macro-Safe Converter Launch Kit.
Related reading: Macro-Safe Converter vs Zamzar · Best XLSM to PDF Converters 2026 · XLSM to PDF Keep Macros
Macro-Safe Converter preserves VBA macros through XLSM conversions. One-time kit — no subscription.
Get the Kit — $9 one-time →