The slowdown your colleague hit isn't a mystery to solve with a laptop upgrade. It's the file, and more specifically, it's the quiet baggage that accumulates in spreadsheets we stop questioning. Old connections, overlapping named ranges, and cross-file references don't announce themselves. They just sit there, dragging every recalculation and scroll until the whole workbook feels like it's running through mud. Your instinct to start by erasing those unused connections and cleaning up the named ranges is exactly right, and it's the first place anyone should look.
But you're asking the better question: how do you find the real culprits systematically, not just guess? Start by isolating the workbook's dependency chain. Open the file with calculation set to manual, then audit each sheet one at a time. Use Excel's built-in "Evaluate Formula" and "Trace Dependents" tools to see which cells are actually doing work versus just holding static values. The issue you described, where adding a similar report tab with the same named range but different file references, is a classic trigger. That's not a formula error; it's a design flaw that forces Excel to resolve conflicting scopes on every open and save. The fix is to rename those ranges per tab or switch to structured table references that don't depend on workbook-level names.
Performance checks aren't about finding one magic button. They're about measuring where time goes. Use the "Calculate" option with a timer, or better, write a quick VBA macro that logs calculation times per sheet. That tells you which sheet is the bottleneck, not which one feels slow. If a sheet takes two seconds to recalculate but you only see one cell change, the problem is volatile functions like `INDIRECT`, `OFFSET`, or `NOW` buried in conditional formatting or data validation. Those are silent killers because they force recalculation even when nothing changes. Check those first, then move to array formulas and external links.
The practical takeaway here is that "simple and self-contained" is a myth until proven otherwise. Your colleague's file looked simple because the data was small, but the overhead came from hidden dependencies that grew with every new tab. The discipline that prevents this isn't exotic. It's naming conventions that are unique per sheet, breaking external references at the source, and auditing calculation times as part of your normal review. Do that, and you won't need to debug a slowdown after the fact. You'll have already prevented the next one.