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.