Tabelle aus anderer Tabelle sortieren lassen
Schritt-für-Schritt-Anleitung
Um ein ausgeblendetes Tabellenblatt in Excel zu sortieren, ohne es einzublenden, kannst Du den folgenden VBA-Code verwenden. Dieser Code wird im Visual Basic for Applications (VBA) Editor eingegeben.
- Öffne Excel und drücke
ALT + F11, um den VBA-Editor zu öffnen.
- Klicke auf
Einfügen und wähle Modul, um ein neues Modul zu erstellen.
-
Kopiere den folgenden Code in das Modul:
Sub Dynamisches_sortieren()
Dim letzteSpalte As Long
Dim letzteZeile As Long
With Worksheets("Adressen")
letzteSpalte = .Cells(2, 1).End(xlToRight).Column
letzteZeile = .Cells(2, 1).End(xlDown).Row
.Range(.Cells(2, 1), .Cells(letzteZeile, letzteSpalte)).Sort _
Key1:=.Range("A2"), Order1:=xlAscending, _
Header:=xlNo, OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
MsgBox "Sortierung ist erfolgt"
End With
End Sub
- Schließe den VBA-Editor und kehre zu Excel zurück.
- Führe das Makro aus, indem Du auf
Entwicklertools und dann auf Makros klickst, wähle Dynamisches_sortieren aus und klicke auf Ausführen.
Häufige Fehler und Lösungen
Alternative Methoden
Falls Du keine VBA-Lösungen nutzen möchtest, gibt es auch die Möglichkeit, Daten manuell zu sortieren:
- Öffne das Tabellenblatt, das Du sortieren möchtest.
- Wähle die Zellen aus, die sortiert werden sollen.
- Gehe zu
Daten und klicke auf Sortieren.
- Wähle die Spalte aus, nach der sortiert werden soll, und klicke auf
OK.
Diese Methode erfordert jedoch, dass das Tabellenblatt sichtbar ist.
Praktische Beispiele
Angenommen, Du hast eine Liste von Adressen im Tabellenblatt "Adressen". Um die Liste nach Nachnamen zu sortieren, kannst Du den oben genannten VBA-Code verwenden. Achte darauf, dass die Nachnamen in der Spalte A stehen. Der Code wird die Daten automatisch nach der zweiten Zeile sortieren.
Tipps für Profis
- Automatisierung: Du kannst den VBA-Code so anpassen, dass er bei bestimmten Ereignissen (z.B. beim Öffnen der Datei) automatisch ausgeführt wird.
- Fehlerbehandlung: Füge eine Fehlerbehandlungsroutine hinzu, um potenzielle Laufzeitfehler elegant zu behandeln.
Beispiel für eine einfache Fehlerbehandlung:
On Error GoTo FehlerHandler
' Dein Sortiercode hier
Exit Sub
FehlerHandler:
MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
FAQ: Häufige Fragen
1. Kann ich den Code auch für andere Tabellenblätter verwenden?
Ja, Du musst lediglich den Namen des Tabellenblatts im Code anpassen.
2. Was passiert, wenn ich das ausgeblendete Tabellenblatt nicht benenne?
Der Code wird einen Fehler ausgeben, da er das spezifische Tabellenblatt nicht finden kann. Achte darauf, die Namen korrekt zu verwenden.