Inhaltsverzeichnis
Das Tutorial zeigt, wie Sie Excel-Arbeitsblätter mit Hilfe von VBA-Code und dem Arbeitsmappenmanager schnell in alphabetischer Reihenfolge sortieren können.
Microsoft Excel bietet eine Reihe von schnellen und einfachen Möglichkeiten, um Spalten oder Zeilen in alphabetischer Reihenfolge anzuordnen. Es gibt jedoch nur eine Methode, um Arbeitsblätter in Excel neu anzuordnen: Ziehen Sie sie an die gewünschte Position auf der Registerkartenleiste. Wenn es darum geht, Registerkarten in einer wirklich großen Arbeitsmappe alphabetisch anzuordnen, kann dies ein langer und fehlerhafter Weg sein. Suchen Sie nach einer zeitsparenden Alternative? Es gibt nur zwei: VBA-Codeoder Tools von Drittanbietern.
Alphabetisierung von Registerkarten in Excel mit VBA
Nachfolgend finden Sie drei VBA-Code-Beispiele zum Sortieren von Excel-Blättern aufsteigend, absteigend und in beide Richtungen, je nach Wahl des Benutzers.
Da wir davon ausgehen, dass Sie über einige Erfahrung mit VBA verfügen, werden wir nur die grundlegenden Schritte zum Hinzufügen eines Makros zu Ihrem Arbeitsblatt erläutern:
- Drücken Sie in Ihrer Excel-Arbeitsmappe Alt + F11, um den Visual Basic Editor zu öffnen.
- Klicken Sie im linken Fensterbereich mit der rechten Maustaste auf DiesesArbeitsbuch und klicken Sie dann auf einfügen. > Modul .
- Fügen Sie den VBA-Code in das Codefenster ein.
- Drücken Sie F5, um das Makro auszuführen.
Eine ausführliche Schritt-für-Schritt-Anleitung finden Sie unter Wie man VBA-Code in Excel einfügt und ausführt.
Tipp: Wenn Sie das Makro zur weiteren Verwendung aufbewahren möchten, müssen Sie die Datei als Excel-Makroarbeitsmappe (.xlsm) speichern.
Alternativ können Sie auch unsere Beispiel-Arbeitsmappe Alphabetisierung von Excel-Tabs herunterladen, den Inhalt aktivieren, wenn Sie dazu aufgefordert werden, und das gewünschte Makro direkt von dort aus ausführen. Die Arbeitsmappe enthält die folgenden Makros
- TabsAscending - Blätter alphabetisch von A bis Z sortieren.
- TabsDescending - Ordnen Sie die Blätter in umgekehrter Reihenfolge an, von Z nach A.
- AlphabetisierenTabellen - Blattregister in beide Richtungen, aufsteigend oder absteigend, sortieren.
Wenn Sie die Beispiel-Arbeitsmappe heruntergeladen und in Excel geöffnet haben, öffnen Sie Ihre eigene Arbeitsmappe, in der Sie die Registerkarten alphabetisch ordnen möchten, drücken Sie Alt + F8, wählen Sie das gewünschte Makro aus und klicken Sie auf ausführen. .
Excel-Registerkarten alphabetisch von A bis Z sortieren
Dieses kleine Makro ordnet die Blätter in der aktuellen Arbeitsmappe in aufsteigende alphanumerische Reihenfolge zuerst die Arbeitsblätter, deren Namen mit Zahlen beginnen, dann die Blätter von A bis Z.
Sub TabsAscending() For i = 1 To Application.Sheets.Count For j = 1 To Application.Sheets.Count - 1 If UCase$(Application.Sheets(j).Name)> UCase$(Application.Sheets(j + 1).Name) Then Sheets(j).Move after:=Sheets(j + 1) End If Next Next MsgBox "Die Tabs wurden von A bis Z sortiert." End SubExcel-Registerkarten von Z bis A anordnen
Wenn Sie Ihre Blätter sortieren möchten in absteigende alphanumerische Reihenfolge (Z bis A, dann Blätter mit numerischen Namen), dann verwenden Sie den folgenden Code:
Sub TabsDescending() For i = 1 To Application.Sheets.Count For j = 1 To Application.Sheets.Count - 1 If UCase$(Application.Sheets(j).Name) <UCase$(Application.Sheets(j + 1).Name) Then Application.Sheets(j).Move after:=Application.Sheets(j + 1) End If Next Next MsgBox "Die Tabs wurden von Z nach A sortiert." End SubTabs aufsteigend oder absteigend alphabetisieren
Mit diesem Makro können Ihre Benutzer entscheiden, wie die Arbeitsblätter in einer bestimmten Arbeitsmappe sortiert werden sollen: alphabetisch von A bis Z oder in umgekehrter Reihenfolge.
Da das Standarddialogfeld (MsgBox) in Excel VBA nur die Auswahl aus einer Handvoll vordefinierter Schaltflächen erlaubt, werden wir unser eigenes Formular (UserForm) mit drei benutzerdefinierten Schaltflächen erstellen: A bis Z , Z nach A und Abbrechen .
Öffnen Sie dazu den Visual Basic Editor, klicken Sie mit der rechten Maustaste auf DiesesArbeitsbuch und klicken Sie auf einfügen. > UserForm . nennen Sie Ihr Formular SortOrderFrom und fügen Sie ihm 4 Steuerelemente hinzu: eine Beschriftung und drei Schaltflächen:
Drücken Sie dann F7 (oder doppelklicken Sie auf das Formular), um das Fenster Code Der Code fängt Schaltflächenklicks ab und ordnet jeder Schaltfläche ein eindeutiges Tag zu:
Private Sub CommandButton1_Click() Me.Tag = 1 Me.Hide End Sub Private Sub CommandButton2_Click() Me.Tag = 2 Me.Hide End Sub Private Sub CommandButton3_Click() Me.Tag = 0 Me.Hide End SubJe nachdem, ob der Benutzer auf die Schaltfläche A bis Z oder Z nach A auf Ihrem Formular, sortieren Sie die Registerkarten in aufsteigender alphabetischer Reihenfolge (standardmäßig ausgewählt) oder in absteigender alphabetischer Reihenfolge; oder schließen Sie das Formular und tun Sie nichts im Falle von Abbrechen Dies geschieht mit folgendem VBA-Code, den Sie wie gewohnt über einfügen. > Modul .
Sub AlphabetizeTabs() Dim SortOrder As Integer SortOrder = showUserForm If SortOrder = 0 Then Exit Sub For x = 1 To Application.Sheets.Count For y = 1 To Application.Sheets.Count - 1 If SortOrder = 1 Then If UCase$(Application.Sheets(y).Name)> UCase$(Application.Sheets(y + 1).Name) Then Sheets(y).Move after:=Sheets(y + 1) End If ElseIf SortOrder = 2 Then If UCase$(Application.Sheets(y).Name)<UCase$(Application.Sheets(y + 1).Name) Then Sheets(y).Move after:=Sheets(y + 1) End If End If Next Next End Sub Function showUserForm() As Integer showUserForm = 0 Load SortOrderForm SortOrderForm.Show (1) showUserForm = SortOrderForm.Tag Unload SortOrderForm End FunctionWenn Sie sich mit VBA noch nicht so gut auskennen, können Sie einfach unsere Beispiel-Arbeitsmappe zum Alphabetisieren von Registerkarten herunterladen, sie in Ihrem Excel neben Ihrer eigenen Datei öffnen, in der Sie die Registerkarten sortieren möchten, und die Funktion AlphabetisierenTabellen Makro aus Ihrer Arbeitsmappe:
Wählen Sie die bevorzugte Sortierreihenfolge, z. B, A bis Z und beobachten Sie die Ergebnisse:
Tipp: Mit VBA können Sie auch Kopien Ihrer Excel-Arbeitsblätter erstellen. Der Code ist hier verfügbar: How to duplicate sheet in Excel with VBA.
Alphabetische Sortierung von Excel-Registerkarten mit Ultimate Suite
Die Benutzer unserer Ultimate Suite für Excel müssen sich nicht mit VBA herumschlagen - ihnen steht ein multifunktionaler Workbook Manager zur Verfügung:
Mit diesem Tool, das dem Excel-Band hinzugefügt wurde, können Sie die Registerkarten mit einem einzigen Mausklick alphabetisch ordnen, genau wie es sein sollte!
Wenn Sie neugierig auf diese und über 70 weitere professionelle Tools für Excel sind, können Sie hier eine Testversion unserer Ultimate Suite herunterladen.
Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog begrüßen zu dürfen!