VBA Sortierfunktion

  • Excel

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von peterfido.

    VBA Sortierfunktion

    Hallo
    Ich habe eine Frage.
    Ich habe eine Tabelle die verschiedenen ällen unterschiedlich lang ist. Ist müchte sie nach der Spalte F sortieren ab der Zeile 4 stehen darin Werte von Spalte A bis U.
    Wenn ich versuche den Sub auzuführen bekomme ich den Laufzeitfehler 1004 und "Die Sort Eigenschaft des Range-Objekts kann nicht zugeordnet werden."
    Ich glaube ich sage dem Programm an der falschen stelle was es sortieren soll aber ich verstehe die einzelnen Ausdrücke noch nicht komplett.

    Im Moment schaut es so aus:

    Visual Basic-Quellcode

    1. Sub Sort()
    2. Endrow = Worksheets(8).Cells(Rows.Count, 4).End(xlUp).Row
    3. With ActiveWorkbook.Worksheets(8).Range("A4").Sort
    4. .SortFields.Clear
    5. .SortFields.Add Key:=Worksheets(8).Range("F4"), SortOn:=xlSortOnValues, _
    6. Order:=xlAscending, DataOption:=xlSortNormal, Orientation:=xlTopToBottom, Header:=xlNo, MatchCase:=False
    7. '.SetRange (ThisWorkbook.Worksheets(8).Range("A4:A" & Endrow))
    8. '.SortMethod = xlPinYin
    9. End With
    10. 'Next
    11. End Sub


    Wisst ihr was ich verbessern kann?
    Hallo,

    Du willst NUR A4 nach F4 sortieren. Da passen die Ranges nicht. Sowas kannst Du grob beim Makrorekorder abschauen. Einmal durchführen und dann den Code optimieren. Also die Selects und so raus.

    Spoiler anzeigen
    Z.B. so:

    Visual Basic-Quellcode

    1. Private Sub Sortieren()
    2. Range("a4:u" & Cells(Rows.Count, 4).End(xlUp).Row).Sort Key1:=Range("F4")
    3. End Sub

    Gruß
    Peterfido

    Keine Unterstützung per PN!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „peterfido“ ()