Especially for large Excel workbooks with many sheets it’s crucial to organize the content. You should—for example—sort worksheets in a logic sequence. One way to sort sheets would be in an alphabetical order. This article introduces three simple methods for sorting Excel worksheets.

## Method 1. Sort sheets manually

Yes, it sounds stupid. But there is no built-in function in Excel for sorting worksheets. Because of that, in many cases it’s really the fastest method to sort sheets per drag-and-drop with the mouse. You can also use the “move worksheets” function (right-click on the sheet name), but according to my experience this function takes much longer than just using dragging the sheets around using the mouse.

Maybe a small piece of advice at this point. If you press and hold the Ctrl key on the keyboard while dragging worksheets around, you create a copy of the worksheet instead of moving it.

## Method 2. Use a simple VBA macro

You’ve probably skipped the first method because you have too many worksheets or you are looking for a recurring solution. Again, Excel doesn’t offer a built-in function for sorting worksheets. So you could just copy and paste one of the following VBA macros. Follow these steps:

1. Insert a new VBA module,
2. paste one of the two source codes snippets
3. and press start.

### Macro 1. Sort sheets alphabetically in ascending order.

``````Sub sortAscending()
Dim i, n, k As Double

'Count the number of worksheets and store the number in variable "n"
n = Application.Sheets.Count

'Do the following look for each worksheet again
For i = 1 To n

'Loop through all worksheets until the second last one (later you use the .move after function)
For k = 1 To n - 1

'If the name is larger than the following worksheet, change the sequence of these two worksheets.
'In order to enable a proper comparison, change all characters to lower case (UCase = Upper case works
'the same way.
If LCase(Sheets(k).Name) > LCase(Sheets(k + 1).Name) Then Sheets(k).Move after:=Sheets(k + 1)
Next
Next

End Sub``````

### Macro 2. Sort sheets alphabetically in descending order.

``````Sub sortDescending()
Dim i, n, k As Double

'Count the number of worksheets and store the number in variable "n"
n = Application.Sheets.Count

'Do the following loop for each worksheet again
For i = 1 To n

'Loop through all worksheets until the second last one (later you use the .move after function)
For k = 1 To n - 1

'If the name is smaller than the following worksheet, change the sequence of these two worksheets.
'In order to enable a proper comparison, change all characters to lower case (UCase = Upper case works
'the same way.
If LCase(Sheets(k).Name) < LCase(Sheets(k + 1).Name) Then Sheets(k).Move after:=Sheets(k + 1)
Next
Next

End Sub
``````

## Method 3. Use an Excel add-in to sort sheets

You don’t want to struggle with a VBA macro? Or you need further options for fine-tuning the sorting? There are some Excel add-ins available for sorting worksheets. Also our Excel add-in “Professor Excel Tools” provides such function.

1. Select the worksheets you want to sort.
2. Click on “Sort Sheets” on the Professor Excel ribbon.
3. Fine-tune the options. For example sort all worksheets or just the selected worksheets. Or group them by tab color. Press “Start”.

That’s it.

This function is included in our Excel Add-In ‘Professor Excel Tools’

More than 35,000 users can’t be wrong. Henrik Schiffner is a freelance business consultant and software developer. He lives and works in Hamburg, Germany. Besides being an Excel enthusiast he loves photography and sports.

1. Marie Damico says:
1. Henrik Schiffner says: