The Only Excel Trick You Need for Aggregating Data from Multiple Excel Files

It’s 4:47 PM on Friday. Your manager just asked for a consolidated sales report by 5. You have 12 spreadsheets open — Sales_Q1_Acme.xlsx, Sales_Q1_BrightCo.xlsx, Sales_Q1_Nexus.xlsx, plus eight more — all in C:\Reports\Q1_2024\. None use the same tab name. Three have headers in row 2. One uses commas instead of periods in numbers. You’ve never touched Power Query.

Quick Answer

Use Excel’s built-in Get Data > From File > From Folder — then filter for .xlsx, promote headers, and combine. It works even when sheets have inconsistent layouts, and you can refresh with Ctrl+Alt+F5. No add-ins, no coding, no renaming files.

All the Methods

Method Steps Best For Limitations
Get Data > From Folder 1. Point to folder
2. Filter by extension
3. Drill into Content column
4. Combine & load
10–100 files, mixed sheet names, irregular headers Fails if files are password-protected or open elsewhere
Power Query: Append Queries 1. Load each file individually
2. Standardize column names
3. Use Append Queries as New
Files with identical structure but different ranges (e.g., A1:D100) Manual per-file setup; no auto-refresh across folders
Excel 365: =TEXTJOIN + INDIRECT (volatile) 1. List file paths in A2:A13
2. Build formula referencing '[file.xlsx]Sheet1'!B2
3. Wrap in TEXTJOIN + ARRAYFORMULA
Small, static sets (≤5 files), same sheet name & cell layout Breaks if source files move; recalculates every edit
VBA Loop + Consolidate 1. Open each workbook
2. Copy used range from Sheet1
3. Paste values below last row in master
Legacy Excel versions (2010/2013), no Power Query access Fails silently if any file is read-only or missing Sheet1
Microsoft Query (ODBC) 1. Register folder as data source
2. Write SQL SELECT across .xlsx files
3. Import results
Advanced users comfortable with basic SQL syntax Requires 64-bit ACE OLEDB driver; fails on M1 Macs

Method 1 Deep Dive

We’ll use Get Data > From Folder — the fastest path for messy, real-world files. Start with this folder:

  • C:\Reports\Q1_2024\Sales_Q1_Acme.xlsx → Sheet Revenue, headers in Row 1, data from A1:E42
  • C:\Reports\Q1_2024\Sales_Q1_BrightCo.xlsx → Sheet Data, headers in Row 2, data from A2:E38
  • C:\Reports\Q1_2024\Sales_Q1_Nexus.xlsx → Sheet Summary, headers in Row 1, data from B1:F51

Go to Data tab > Get Data > From File > From Folder. Browse to C:\Reports\Q1_2024\. Click OK. You’ll see a table with columns: Name, Extension, Date modified, and Content. Filter Extension to show only .xlsx. Right-click the Content column header → Transform > Combine Binaries. In the dialog, choose Combine using first file’s headers. Click OK.

Now — here’s the counterintuitive part: don’t click “Load” yet. Instead, click Transform Data. In Power Query Editor, you’ll see a list of tables — one per file. Click the double-arrow icon next to Content. Check Use original column names as headers. Uncheck Include hidden items. Click OK. You’ll get a merged table with an extra column: Source.Name. That tells you which file each row came from — critical for auditing. Rename it to File_Source. Then go to Home > Close & Load.

The result lands in a new worksheet starting at A1. Column A is File_Source, then your data columns. If Acme’s file has Region, Product, Amount, and Nexus has Area, Item, Value, Power Query aligns them by position — not name. So make sure all files list columns in the same order. If they don’t, use Transform > Use First Row as Headers before combining.

Method 2 Deep Dive

When files share identical structure — same sheet name, same header row, same column order — Append Queries gives tighter control. Say all 12 files have a sheet named Q1_Sales, with headers in Row 1 and data in A1:D100.

Start fresh: Data > Get Data > From File > From Workbook. Select Sales_Q1_Acme.xlsx. In Navigator, check Q1_Sales and click Transform Data. In Power Query Editor, remove blank rows (Home > Remove Rows > Remove Blank Rows). Promote headers if needed (Transform > Use First Row as Headers). Now close and load to Connection Only (don’t create a worksheet). Repeat for Sales_Q1_BrightCo.xlsx — same steps, same connection-only load.

Then: Home > Combine Queries > Append Queries. Choose Three or more tables. Select all 12 query names (they’ll appear as Q1_Sales (1), Q1_Sales (2), etc.). Click OK. You’ll get one merged query. Add a custom column: = [Source.Name] — but wait! You didn’t capture filename earlier. So go back: before appending, edit each query and add a custom column File_Name with value "Acme", "BrightCo", etc. That’s the manual step — but it pays off when you need traceability. Final output loads to Sheet1!A1 with 1,247 rows — clean, sortable, and fully refreshable.

Cheat Sheet

Action Keyboard Shortcut Notes
Open Power Query Editor Alt + A + M Hold Alt, press A, release, press M
Refresh all queries Ctrl + Alt + F5 Works even if Power Query window is closed
Promote first row to headers Alt + H + P + H In Power Query Editor only
Filter column by extension Click ▼ next to Extension → uncheck (Select All) → check .xlsx No shortcut — but double-clicking the filter icon clears it fast
Load merged result to existing sheet In Close & Load dropdown → Close & Load To… → select Existing worksheet$A$1 Avoids overwriting formulas in adjacent columns
Sarah Mitchell

Sarah Mitchell

Sarah has 12 years of experience covering Microsoft 365 productivity tools and enterprise software workflows. She specializes in Excel automation and SharePoint integration.