Time, cost, and what you'll miss. A realistic look at what manual .xls and .mdb migration actually costs your business.
Manual migration sounds straightforward: open the file in Excel, Save As .xlsm, done. In practice, for files with any complexity at all, that's just the beginning.
A complete manual migration of a non-trivial .xls workbook with macros involves:
Declare Function statement with PtrSafe and changing pointer typesFor a simple workbook with a few macros, this might take 30 minutes. For a complex workbook built over years with interconnected modules, ActiveX forms, and external connections, it can easily take a full day — per file.
Assume: 50 .xls files, mix of simple and complex. Average 2 hours each at $50/hr fully-loaded employee cost.
Labor cost: 50 files × 2 hrs × $50 = $5,000
Opportunity cost: That same employee isn't doing their actual job for two full weeks.
Risk cost: Manual migration misses things. Errors found in production cost far more than $5,000 to fix.
LegacyLeaps cost: 50 tokens at current token pricing. Under $100.
| Factor | LegacyLeaps | Manual Migration |
|---|---|---|
| Time per file | Minutes | 30 min – 8 hours |
| Scales to 100+ files | Yes — batch mode | No — linear time cost |
| Pre-migration audit report | Yes — free scan first | Manual review only |
| VBA macro preservation | Automated | Manual — easy to miss |
| PtrSafe declaration fixes | Automated | Manual, error-prone |
| ActiveX control migration | Automated | Manual, hit-or-miss |
| Post-migration verification | Built-in compatibility report | Manual testing required |
| Cost for 50 files | Under $100 | $2,500–$10,000 in labor |
| Money-back guarantee | Yes — 30 days | N/A |
Experienced developers doing manual migration still regularly miss these issues:
Event handlers in ThisWorkbook and individual sheet code modules are easy to overlook. They don't appear in the Module list in the VBA editor — you have to click each sheet object separately to find them. Missed event handlers cause silent failures that only appear when a specific user action triggers the event.
VBA code in old workbooks often references DLLs, COM objects, or type libraries that no longer exist at their original paths. The references appear broken (unchecked) in the References dialog but the project still compiles and runs — until one specific code path needs that reference. Manual migration rarely catches these until something fails in production.
A manual review catches PtrSafe errors that appear at compile time. But some API calls only fail at runtime, in specific code paths that aren't tested during migration. These surface weeks or months after the migration when someone runs a function that nobody thought to test.
A file that links to other .xls files needs all referenced files to be migrated in the right order. Manual migration often migrates files independently, breaking inter-file references in the process.
Manual migration is the right choice when:
For everything else — more than a handful of files, files with complex VBA, files your business depends on — the risk/cost profile of manual migration doesn't make sense when a tool can do it faster, more reliably, and with a documented audit trail.
Download LegacyLeaps and scan your files for free. See every macro, every ActiveX control, every compatibility issue — before you convert anything.