Most formula-based Excel files convert cleanly from .xls to .xlsm. Named ranges are one of the places where things get subtle. They don't break dramatically — they break quietly, producing #REF errors or wrong calculation results that don't surface until someone spots a discrepancy three weeks later.
Here's what to audit before converting any file that uses named ranges extensively.
Named ranges work the same way across formats — a name maps to a range reference. What changes is how scope is enforced and how certain edge cases are handled.
Excel supports two scopes for named ranges:
=TotalRevenue=Sheet1!TotalRevenueIn .xls files, it was possible to create names with identical names but different scopes — a workbook-level TotalRevenue and a sheet-level TotalRevenue on Sheet1. When .xls files with these scope conflicts are converted, Excel must choose how to resolve the conflict. The resolution isn't always what you expect, and formulas that referenced the workbook-scoped name may silently switch to the sheet-scoped version after conversion.
How to find these: Before converting, open the Name Manager (Formulas → Name Manager) and sort by Scope. Look for names that appear twice — once with Workbook scope and once with a Sheet scope.
Many .xls files accumulate hidden named ranges over time — created by Excel features, macros, or third-party add-ins and then never cleaned up. These don't show in the Name Manager by default. You can reveal them with a macro:
Sub ShowHiddenNames()
Dim nm As Name
For Each nm In ThisWorkbook.Names
If nm.Visible = False Then
Debug.Print nm.Name & " = " & nm.RefersTo
End If
Next nm
End Sub
Most hidden names are harmless artifacts (Excel uses them internally for things like print areas and chart source data). But some hidden names have broken or external references that surface as errors in the converted file. Review what you find before converting.
A named range can refer to a range in an external workbook: =TotalRevenue might resolve to ='C:\Reports\[2023budget.xls]Sheet1'!$B$5. If that external .xls file hasn't been converted yet, the named range in your converted file will still point to the old .xls path.
This doesn't break immediately if the external file still exists. It becomes a problem when:
Audit external references before conversion: Formulas → Name Manager — look for any name whose "Refers To" column starts with a path to another file. Convert dependent files first, then update these references.
LegacyLeaps scans your .xls files and reports external links, hidden names, and scope conflicts before you convert. Know what you're working with before anything changes.
Try the Free ScanPrint areas in Excel are stored as named ranges with the special name Print_Area. In .xls files with multiple sheets, each sheet can have its own Print_Area — stored as sheet-scoped names like Sheet1!Print_Area.
After conversion to .xlsm or .xlsx, print areas generally survive intact. Where they break: if a workbook-scoped Print_Area exists alongside sheet-scoped ones (a legacy artifact from older Excel versions), the conflict can cause one or more print areas to disappear.
After conversion, verify print preview on every sheet to confirm print areas are still set correctly.
If VBA code references named ranges — Range("TotalRevenue") or Names("TotalRevenue").RefersTo — those references continue to work as long as the name survives conversion intact.
The problem: if a scope conflict during conversion caused a name to be renamed (Excel may add a numeric suffix to disambiguate: TotalRevenue2), any VBA that referenced the original name by string will silently fail — the range won't be found.
If you have VBA code that references named ranges, audit the Name Manager after conversion and compare against the pre-conversion list. If any names were renamed, update the VBA references.
After converting any file with significant named range usage:
For a complete post-conversion validation workflow, see the Excel Migration Validation Checklist.
LegacyLeaps scans your file before conversion — naming conflicts, external links, hidden names, and ActiveX dependencies. You see the risk report before anything is converted.
Download Free ScannerRelated: Excel External Links — Find and Fix Before Migration · Excel Migration Validation Checklist · Complete Guide to Legacy Excel Migration
Practical fixes for legacy Excel and Access problems. No spam.