Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
28.04.2024 14:18:05
Anzeige
Archiv - Navigation
1932to1936
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

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

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


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

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige