Cause #1: Background Refresh Is On (The Most Common Culprit)
When you load a query to a worksheet, Excel by default lets it refresh in the background. That sounds harmless, but with a large dataset, background refresh keeps the main Excel thread busy while you're trying to scroll or type. The result? The dreaded "Not Responding" window appears, and you're stuck waiting.
Here's the fix: turn off background refresh. It forces Excel to do the refresh as a single, focused operation. It feels slower at first, but it won't freeze your entire workbook during the process.
- Go to the Data tab and click Queries & Connections (on the right side).
- In the pane that appears, right-click your query name.
- Select Properties.
- In the Query Properties window, find the "Refresh control" section.
- Uncheck the box that says "Refresh this connection in the background".
- Click OK.
After you click OK, you'll notice that when you refresh, Excel will show a progress bar and you can't click around until it's done. That's normal. On a large dataset, it might take a few minutes. Use that time to grab coffee.
Real-world trigger: You're refreshing a query that pulls 500,000 rows from a SQL database. You click Refresh, then immediately try to scroll through your pivot table. Excel freezes because it's still processing in the background while you're interacting.
Cause #2: Missing Data Type Assignments (The Silent Performance Killer)
Power Query guesses data types when it first loads data. But when you're working with big files, those guesses can be wrong, and more importantly, they're not always set. If a column stays as "Any" type, Power Query has to do extra work on every single row during each step. Multiply that by 500,000 rows and you've got a recipe for frozen screens.
The fix is simple: explicitly set the data type for every column you plan to use. You don't need to do it for columns you're going to drop, but any column that survives to the final output should have a type.
- In Power Query Editor, select the column you want to fix.
- Go to the Home tab, find the Data Type dropdown (it shows "Any" or "Text" or whatever the guess is).
- Choose the correct type: Whole Number for integers, Decimal Number for decimals, Date, Text, etc.
- Repeat for each column.
You'll see the column header icon change from the generic "ABC123" to a specific icon (like the calendar for dates). After you've set all types, click Close & Load.
Why this works: When Power Query knows a column is a date, it can compress it and process it faster. When it has to evaluate "is this text or number?" for every row, it's like reading a book where every word is in a different language.
Real-world trigger: You're combining multiple CSV files that each have a "TransactionDate" column. In some files it's text, in others it's date. Power Query sets it as "Any" because it can't decide. Every filter or sort operation now takes 10 times longer.
Cause #3: Your Machine Just Doesn't Have Enough RAM (The Hardware Wall)
Power Query is a memory hog. It holds the entire dataset in memory while it processes. If you have a 64-bit Excel but only 8GB of RAM, and you're trying to process 2 million rows, you'll hit the wall. The freeze isn't a bug — it's your computer gasping for memory.
You can check your RAM usage during a refresh: open Task Manager (Ctrl+Shift+Esc), go to the Performance tab, and watch the Memory graph. If it hits 90% or higher while Power Query runs, that's your problem.
What to do about it:
- Close other heavy programs (browsers with 50 tabs, Photoshop, etc.) before refreshing.
- If you're on 32-bit Excel, switch to 64-bit. 32-bit is limited to 2GB of memory. 64-bit can use as much as your OS allows.
- Filter the data earlier. Instead of pulling all rows from the database, use a query that only brings the last 12 months. You can always change it later.
If you're stuck with 32-bit Excel, here's how to check: go to File > Account, and look under "About Excel". It'll say "32-bit" or "64-bit". If it's 32-bit, go to the Microsoft website and download the 64-bit version. You'll need to uninstall the 32-bit first.
Real-world trigger: You're importing a 1.5GB text file. Your company laptop has 8GB RAM and you're running Chrome with a dozen tabs. Power Query loads the file, then Excel freezes for 20 minutes. Task Manager shows Memory at 98%.
One more thing: if your data is in a database (SQL Server, Oracle, etc.), consider doing the heavy filtering in the database query itself. Power Query can send a SQL WHERE clause before it loads anything. That cuts the data size dramatically.
Quick Reference Guide
| Cause | Symptom | Fix |
|---|---|---|
| Background refresh on | Freeze when you try to interact during refresh | Uncheck "Refresh this connection in the background" in query properties |
| Unset data types | Slow processing, especially on filtered or sorted columns | Set explicit data types for every column in Power Query Editor |
| Low RAM / 32-bit Excel | Freeze with large files, memory near 100% | Close other apps, upgrade to 64-bit, or pre-filter data |
Start with the first fix. It works for most people. If you're still seeing freezes after that, move to data types. And if you're still stuck, it's time to look at your hardware or the query itself. You don't have to live with frozen Excel.