One workbook vs. one sheet — these are different jobs
This page is about combining multiple worksheets into one workbook (a single file that keeps each sheet as a separate tab). If you instead want to stack the data rows from several sheets into one table, that is a different task.
| You want to… | Result | Where to go |
|---|---|---|
| 📁 Combine worksheets into one workbook | One .xlsx file, multiple sheet tabs | This page |
| 📋 Merge data rows into one sheet | One sheet, all rows stacked | Combine Worksheets into One Sheet → |
What's your combining goal?
| Your Goal | Recommended Method | Key Consideration |
|---|---|---|
| 🖱️ Combine 2–3 workbooks manually | Move or Copy | ✅ No code — open all files first |
| ⚙️ Combine many workbooks at once | VBA Macro | ⚠️ Backup first, for advanced users |
Choose Your Method
Move or Copy Sheet (Manual, No Code)
Best for combining a handful of workbooks when you want full control over each sheet.
Open All Workbooks
Open every source workbook and the target workbook where the sheets should end up. The target must be open or it won't appear in the list.
Select All Sheets in a Source Workbook
Click the first sheet tab, hold Shift, then click the last tab. This selects every sheet in that workbook.
Right-Click → Move or Copy
Right-click one of the selected tabs and choose Move or Copy.
- To book: select the target workbook
- Before sheet: choose where the sheets should land
- ✅ Check "Create a copy" — leaving it unchecked MOVES the sheets
Repeat & Save
Repeat steps 2–3 for each source workbook, then save the target workbook. Each sheet now lives in one file as a separate tab.
Rename to fix.
VBA Macro (Batch Combine Many Workbooks)
Automate combining every worksheet from all open workbooks into one master workbook.
⚠️ VBA Warning
VBA operations cannot be undone! Always back up your files before running macros. Only suitable for users familiar with VBA.
Prepare the Master Workbook
Create a new blank workbook, save it as Master.xlsm (macro-enabled). Open all the source workbooks you want to combine.
Open the VBA Editor
Press Alt + F11 (Windows) or Fn + Option + F11 (Mac).
Insert a Module & Paste the Code
Click Insert → Module, then paste:
Dim wb As Workbook
Dim ws As Worksheet
Dim master As Workbook
Set master = ThisWorkbook
For Each wb In Application.Workbooks
If wb.Name <> master.Name Then
For Each ws In wb.Worksheets
ws.Copy After:=master.Worksheets(master.Worksheets.Count)
Next ws
End If
Next wb
MsgBox "All sheets combined into " & master.Name
End Sub
Run the Macro
Press F5 to run. Every worksheet from the other open workbooks is copied into the master workbook.
Common Problems & Fixes
The "To book" dropdown is empty
Your target workbook isn't open. Open it first, then reopen the Move or Copy dialog.
Sheets get "(2)", "(3)" added to their names
That's Excel handling duplicate names. Rename each sheet afterward, or give source sheets unique names before combining.
"Move or Copy" is grayed out
The workbook is likely protected. Go to Review → Unprotect Workbook first, or see the Unprotect Worksheet guide.
Some sheets didn't come over
Hidden sheets aren't selected with Shift+click. Unhide the sheets, then combine.
Formulas now show #REF! errors
Formulas that referenced the old workbook may break. Check and re-point any external references in the combined workbook.
Frequently Asked Questions
Combined Your Workbook? Keep It Organized!
Group the Sheets
Edit many sheets in the combined workbook at once. Master batch operations.
Learn More →Protect the Workbook
Lock your combined workbook so no one breaks the structure or formulas.
Learn More →Merge into One Sheet
Need all rows in a single table instead? Use Power Query, VSTACK, or VBA.
Learn More →Continue Exploring
Sources & References
Written and fact-checked against Microsoft's official Excel documentation.
Disclaimer: This guide is for informational and educational purposes only. Always back up your files before batch operations. Last Updated: September 10, 2026.