Thema Datum  Von Nutzer Rating
Antwort
21.10.2020 10:15:27 Roman
*****
NotSolved
Blau Zwei Spalten aus Blatt sortieren (mehrfach)
21.10.2020 20:26:56 xlKing
NotSolved
22.10.2020 02:41:56 Gast48287
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
21.10.2020 20:26:56
Views:
477
Rating: Antwort:
  Ja
Thema:
Zwei Spalten aus Blatt sortieren (mehrfach)

Hallo Roman,

das ist auch mit VBA nicht so einfach möglich. Du kannst in Excel nur zusammenhängende Bereiche sortieren. Alle Spalten dazwischen werden mitsortiert.

Aber du kannst VBA nutzen um Die Spalten rechts auszuschneiden und links neben der entsprechenden Spalte wieder einzufügen. Spalte K wandert dann also nach Spalte B. Die ursprüngliche Spalte B wird dabei nach C verschoben. Spalte L wandert nun nach Spalte D, während die ursprüngliche spalte C durch das Einfügen nach E geht. Schließlich wandert Spalte M nach Spalte F. usw.

Jetzt kannst du A mit B sortieren, dann C mit D und E mit F.

Wenn du das dann zurück ins ursprüngliche Format bringen willst, musst du die ganze Verschieberei erneut von links nach rechts durchführen. Zeichne das ganze mit dem Makrorekorder auf und schmeiße alles was Select und Selection heißt raus und füge das zu einer Zeile zusammen. Aus den zwei Zeilen

Columns("K:K").Select
Selection.Cut

wird dann z.B. Columns("K:K").Cut. Musst du nicht machen, ist aber übersichtlicher.

Als Code könnte das ganze dann z.B. so aussehen:

Sub Makro3()

    Columns("K:K").Cut
    Columns("B:B").Insert Shift:=xlToRight
    Columns("L:L").Cut
    Columns("D:D").Insert Shift:=xlToRight
    Columns("M:M").Cut
    Columns("F:F").Insert Shift:=xlToRight
    Columns("A:B").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Columns("C:D").Sort Key1:=Range("C1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Columns("E:F").Sort Key1:=Range("F1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Columns("B:B").Cut
    Columns("N:N").Insert Shift:=xlToRight
    Columns("C:C").Cut
    Columns("N:N").Insert Shift:=xlToRight
    Columns("D:D").Cut
    Columns("N:N").Insert Shift:=xlToRight
End Sub

Falls du das nicht selber hinkriegen solltest - Ich bin aber überzeugt, du schaffst das! - wäre eine Beispielmappe mit Beispieldaten (bitte keine echten Daten) in den entsprechenden Spalten sinnvoll. Kannst du z.B. hier hochladen: https://workupload.com Dann können wir den Code besser an die echten Gegebenheiten anpassen.

Gruß Mr. K.

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
21.10.2020 10:15:27 Roman
*****
NotSolved
Blau Zwei Spalten aus Blatt sortieren (mehrfach)
21.10.2020 20:26:56 xlKing
NotSolved
22.10.2020 02:41:56 Gast48287
NotSolved