Tabellenblätter alphabetisch sortieren

Dieser VBA-Code sortiert die Tabellenblätter einer Arbeitsmappe in alphabetischer Reihenfolge wahlweise aufsteigend oder absteigend.

Um die Sortierreihenfolge zu ändern müssen Sie nur die Variable strSortKrit anpassen und entweder den Parameter ">" oder "<" übergeben.

 

{codecitation}

Sub Sheets_alphabetisch_sortieren()
'** Dieses Makro sortiert die Blätter in alphabetischer Reihenfolge
'** Reihenfolge: Sonderzeichen, Ziffern, Buchstaben

'** Dimensionierung der Variablen
Dim intAnz As Integer
Dim a, b As Integer
Dim strSortKrit As String

'** Sortierreihenfolge festlegen
'** "<" = Aufsteigend von 0-9 und A-Z
'** ">" = Absteigend von Z-A und 9-0
strSortKrit = ">" 'Nach Bedarf anpassen!

'** Ermittlung Anzahl Tabellenblätter
intAnz = ActiveWorkbook.Worksheets.Count

'** Blätter nacheinander durchlaufen und sortieren
For a = 1 To intAnz
  For b = a To intAnz
    If strSortKrit = "<" Then
      If Worksheets(b).Name < Worksheets(a).Name Then
        Worksheets(b).Move Before:=Worksheets(a)
      End If
    ElseIf strSortKrit = ">" Then
      If Worksheets(b).Name > Worksheets(a).Name Then
        Worksheets(b).Move Before:=Worksheets(a)
      End If
    End If
  Next b
Next a

End Sub

{/codecitation}