Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sortierung

Forumthread: Sortierung

Sortierung
30.06.2023 13:55:26
Wolfgang

Hallo allerseits,
ich habe ein kleines Problem, wenn ich das aufgezeichnete Makro laufen lasse,
wird auch meine Datumsspalte sortiert.
leider klappt es nicht, wenn ich die länge automatisch bestimmen möchte.
Hiermit:


Dim z
     z = Range("A2").End(xlDown).Row
    ActiveSheet.Range(Cells(3, 1), Cells(z, 18)).Select



Sub Makro2()
' Makro2 Makro
    Range("A3:R429").Select
    ActiveWorkbook.Worksheets("Adressen").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Adressen").Sort.SortFields.Add2 Key:=Range( _
        "M4:M429"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
    With ActiveWorkbook.Worksheets("Adressen").Sort
        .SetRange Range("A3:R429")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    
End Sub


mfg wolfgang

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sortierung
30.06.2023 14:16:45
Yal
Hallo Wolfgang,

den Code in Schritt-Modus (F8 oder "Debuggen", "Einzelschritt") laufen lassen und dabei die Lokalfenster offen haben ("Ansicht", "Lokalfenster").
Dann kannst Du beobachten, dass z = 429 ist. Und so verstehen, wo diese 429 einzusetzen ist.

Sub Makro2()
Dim z
     z = Range("A2").End(xlDown).Row

    With ActiveWorkbook.Worksheets("Adressen").Sort
        .SortFields.Clear
        .SortFields.Add2 Key:=Range("M4:M" & z), SortOn:=xlSortOnValues, _
            Order:=xlAscending, DataOption:=xlSortTextAsNumbers
        .SetRange Range("A3:R" & z)
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    
End Sub
VG
Yal


Anzeige
Danke Yal, klappt !
30.06.2023 15:01:49
Wolfgang


AW: Sortierung
30.06.2023 14:23:40
Piet
Hallo

ich empfehle deinen Code aus Sicherheitsgründen auf xlUp zu ändern.
Grund: - wenn es in der Spalte A eine Leerzeile gibt stimmt dein z nicht!
z = Range("A2").End(xlDown).Row - besser ist:
z = Cells(Rows.Count, 1).End(xlUp).Row

mfg Piet


Anzeige
Danke Piet für den Tipp ! -)
30.06.2023 15:03:01
Wolfgang

;

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