Sort Excel Worksheets/Sheets in Excel
The Excel VBA macro code below can be used in any Excel Workbook, or excel add-in for sorting Excel Sheets. When run it will sort all Sheet in the active Workbook. To use the code, go to Tools>Macro>Visual Basic Editor (Alt+F11) and then to Insert>Module and paste in the code below.
Sub SortSheets() Dim lCount As Long, lCounted As Long Dim lShtLast As Long Dim lReply As Long lReply = MsgBox("To sort Worksheets ascending, select 'Yes'. " _ & "To sort Worksheets descending select 'No'", vbYesNoCancel, "Ozgrid Sheet Sort") If lReply = vbCancel Then Exit Sub lShtLast = Sheets.Count If lReply = vbYes Then 'Sort ascending For lCount = 1 To lShtLast For lCount2 = lCount To lShtLast If UCase(Sheets(lCount2).Name) < UCase(Sheets(lCount).Name) Then Sheets(lCount2).Move Before:=Sheets(lCount) End If Next lCount2 Next lCount Else 'Sort descending For lCount = 1 To lShtLast For lCount2 = lCount To lShtLast If UCase(Sheets(lCount2).Name) > UCase(Sheets(lCount).Name) Then Sheets(lCount2).Move Before:=Sheets(lCount) End If Next lCount2 Next lCount End If End Sub
See also:
Index to Excel VBA Code |
Sort by Color In Excel |
Sort Alphanumeric Text |
Sort Excel Worksheets/Sheets in Excel |
See also Index to Excel VBA Code and Index to Excel Freebies and Lesson 1 - Excel Fundamentals and Index to how to… providing a range of solutions.
Click here to visit our Free 24/7 Excel/VBA Help Forum where there are thousands of posts you can get information from, or you can join the Forum and post your own questions.