Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: nach 2 Spalten sortieren per VBA

nach 2 Spalten sortieren per VBA
07.09.2013 22:05:56
Astis
Hallo,
ich will mein Tabellenblatt (B3 - D 1000)
nach Spalte A und Spalte B aufsteigend sortieren, bekomme es per VBA ab nicht hin...
hier mein Code... der ne Fehlermeldung bringt...
Sub NachMonatsortieren()
Range("B3:D1000").Select
Selection.Sort Key1:=Range("B3"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Selection.Sort Key2:=Range("a3"), Order2:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End Sub

wo hab ich denn jetzt hier den Fehler ?
(hab jetzt einfach den ersten Teil quasi kopiert und aus Key1 und Order1 jeweils die Nummer 2 draus gemacht... fertig... oder denkfehler? Vielen Dank für die Hilfe vorab...

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nach 2 Spalten sortieren per VBA
08.09.2013 07:41:42
Thorsten_Z
Hallo astis,
benutze die "Sortieren" Funktion und lass den Makrorecorder laufen. "Sortieren" ist NICHT das "A-z" oder "Z-A" Symbol sondern das große Symbol daneben. Dort kannst du "Ebene hinzufügen" und die Sortierkriterien für jede Spalte selber wählen!
Gruß
Thorsten

AW: nach 2 Spalten sortieren per VBA
09.09.2013 17:54:26
Hajo_Zi
Range("B3").Sort Key1:=Range("B3"), Order1:=xlDescending, Key2:=Range("A3") _
, Order2:=xxlDescending, Header:=xlNo, MatchCase:=False, Orientation:=xlTopToBottom

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Nach zwei Spalten sortieren mit VBA in Excel


Schritt-für-Schritt-Anleitung

Um mit VBA mehrere Spalten in Excel zu sortieren, kannst Du den folgenden Code verwenden. Dieser sortiert die Daten in den Zellen B3 bis D1000 nach den Werten in Spalte B und A:

Sub NachMonatsortieren()
    Range("B3:D1000").Sort Key1:=Range("B3"), Order1:=xlAscending, _
        Key2:=Range("A3"), Order2:=xlAscending, Header:=xlNo
End Sub

In diesem Code wird die .Sort-Methode verwendet, um die Tabelle nach den Spalten B und A aufsteigend zu sortieren. Achte darauf, dass Du die Sortierreihenfolge (Order1 und Order2) entsprechend anpassen kannst.


Häufige Fehler und Lösungen

  1. Fehlermeldungen beim Sortieren: Wenn Du eine Fehlermeldung erhältst, könnte es daran liegen, dass die angegebenen Zellbereiche nicht korrekt sind. Stelle sicher, dass die Zeilen und Spalten in Deinem Code auch tatsächlich existieren und die richtige Datenart enthalten.

  2. Falsche Sortierreihenfolge: Wenn die Daten nicht in der gewünschten Reihenfolge sortiert werden, überprüfe die Werte in den Schlüsseln (Key1, Key2). Vielleicht möchtest Du xlDescending anstelle von xlAscending verwenden, um die Daten absteigend zu sortieren.


Alternative Methoden

Falls Du nicht mit VBA arbeiten möchtest, kannst Du auch die Sortierfunktion in Excel verwenden. Hier sind die Schritte:

  1. Markiere den Bereich, den Du sortieren möchtest.
  2. Gehe zu Daten in der Menüleiste.
  3. Klicke auf Sortieren und füge eine neue Ebene hinzu, um die Sortierkriterien für jede Spalte festzulegen.
  4. Wähle die gewünschten Sortierkriterien aus und klicke auf OK.

Diese Methode ist besonders nützlich, wenn Du Excel nicht gut kennst oder keine Makros verwenden möchtest.


Praktische Beispiele

Angenommen, Du hast eine Tabelle mit den folgenden Daten:

A B C
Name Monat Betrag
Max Januar 200
Sophie Februar 150
Anna Januar 300
Peter Februar 250

Um diese Tabelle nach den Spalten Monat (B) und Name (A) aufsteigend zu sortieren, kannst Du den oben genannten VBA-Code verwenden. Nach dem Sortieren sieht die Tabelle so aus:

A B C
Max Januar 200
Anna Januar 300
Sophie Februar 150
Peter Februar 250

Tipps für Profis

  • Verwende die .Sort-Methode in Kombination mit weiteren VBA-Funktionen, um komplexere Sortierlogiken zu erstellen, die mehrere Kriterien berücksichtigen.
  • Denke daran, dass Du auch benutzerdefinierte Sortierkriterien in Excel definieren kannst, um die Sortierung nach spezifischen Anforderungen anzupassen.
  • Halte Deinen VBA-Code sauber und gut dokumentiert, um spätere Änderungen zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Spalten gleichzeitig sortieren?
Du kannst die .Sort-Methode verwenden und mehrere Sortierkriterien angeben, z.B. Key1 für die erste Spalte und Key2 für die zweite.

2. Was mache ich, wenn mein VBA-Code nicht funktioniert?
Überprüfe die Zellreferenzen und die Sortierparameter. Stelle sicher, dass die Daten im richtigen Format vorliegen und keine leeren Zellen innerhalb des Sortierbereichs sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige