ich kann mittels des nachfolgenden Code ganz einfach eine Tabelle sortieren.
Nun habe ich aber ein Problem.
Das ganze ist statisch.
Kann man irgendwie den Code so anpassen, dass ab Spalte A in Zeile 1 in Tabelle 2 die Sortierreihenfolge vorgegeben werden kann.
In diesen Fall wäre es
A1 = E
A2 = M
A3 = O
A4 = U
Sprich genau so wie es oben angegeben ist, aber durch die Vorgabe im Sheet können die Bezüge geändert werden.
Der Anfang der Sortierfunktion ist immer Zeile 16 bis zum Ende.
Das Ganze muss aber auch erweiterbar sein. Es könnte auch sein, dass nicht nur 4 Krtierien sind sondern 5 oder 8.
Hat hierzu jemand eine idee?
Sub Sortieren()
Dim rSort As Range
With ActiveWorkbook.Worksheets("Aufstellung")
Set rSort = .Range(.Cells(16, 1), .Cells(.Rows.Count, 1).End(xlUp).Offset(, 1000))
With .Sort
.SortFields.Clear
.SortFields.Add Key:=Range("E16"), _
SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
.SortFields.Add Key:=Range("M16"), _
SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
.SortFields.Add Key:=Range("O16"), _
SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
.SortFields.Add Key:=Range("U16"), _
SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
.SetRange rSort
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With
End Sub