I am afraid I cannot explain what is going on, but I had similar experience several times - always with XLSM file. In the latest case I learnt that Excel did not like the same range name used twice, when defined as Worksheet range name (we assumed it is safe to use it that way).
Our troubleshooting path is:
- try to save file as XLSB (binary macro file) and either use XLSB file or save it back to XLSM
- check file history (we always keep daily snapshots) and find when the problem firstly occurred; use previous version and port your changes
- extract the code (via SVN code), create a new workbook and import the code back
Usually Step 1 solves the problem, but Step 3 never failed us.