Tabellenblätter aufsteigend per Makro sortieren
Daten in Ihren Listen alphabetisch zu sortieren, ist kein Problem. Aber wie stellen Sie es an, wenn Sie die Tabellenblätter entsprechend ihrer Namen in eine alphabetische Reihenfolge bringen möchten?
Die folgende Abbildung zeigt ein Blattregister mit einer Reihe von Tabellenblättern. Sie sollen alphabetisch sortiert werden, damit sie einfacher zu finden sind.
3
Bei wenigen Blättern können Sie die Aufgabe zuverlässig manuell erledigen. Bei vielen Blättern wird das schnell schwierig, aufwändig und unübersichtlich. Das folgende Makro hilft Ihnen weiter:
Sub SortiereBlaetter()
Dim Zaehler1 As Integer, Zaehler2 As Integer
Dim Name As String
Name = ActiveSheet.Name
For Zaehler1 = 1 To Worksheets.Count
For Zaehler2 = Zaehler1 To Worksheets.Count
If UCase(Worksheets(Zaehler2).Name) < UCase(Worksheets(Zaehler1).Name) Then
Worksheets(Zaehler2).Move before:=Worksheets(Zaehler1)
End If
Next Zaehler2, Zaehler1
Worksheets(Name).Activate
End Sub
Das Makro sortiert die Tabellenblätter in der aktiven Arbeitsmappe in alphabetisch aufsteigender Reihenfolge. Die folgende Abbildung zeigt, wie die Beispiel-Arbeitsmappe aussieht, nachdem Sie das Makro gestartet haben:
Tipp: Falls Sie wissen möchten, wie Sie Makros in Excel eingeben und starten, finden Sie hier eine Kurzbeschreibung: http://www.exceldaily.de/excel-makros-vba/artikel/d/so-geben-sie-makros-in-excel-ein.html