HERBERS Excel-Forum - das Archiv
Range sortieren - Frage zu Sort Key
Peter

Guten Tag
Ich möchte verschiedene Bereiche im nacheinander sortieren. Die Bereiche beinhalten immer ganze Zeilenbereiche (z.B. 10:39)
In der Endvorstellung möchte ich in einer Tabelle "SortierParameter" in Spalte A ab Zeile 1 die Bereiche aufführen und in Spalte B ab Zeile 1 den Sortierschlüssel, jedoch nur den Spaltenbuchstabe erfassen.
Wie kann ich meinen


Sub BereicheSortieren mit der Tabelle "SortierParameter" verbinden?
Danke für eine Antwort.
Gruss, Peter
Tabelle "SortierParameter"
Eintrag Zelle A1: ZZ_AAA
Eintrag Zelle B1: AG
Eintrag Zelle A2: ZZ_BBB
Eintrag Zelle B2: AG


Sub BereicheSortieren()
With Range("ZZ_AAA")
.Sort Key1:=.Range("AG10"), Order1:=xlAscending, Header:=xlYes _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
With Range("ZZ_BBB")
.Sort Key1:=.Range("AG44"), Order1:=xlAscending, Header:=xlYes _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
End Sub


AW: Range sortieren - Frage zu Sort Key
fcs

Hallo Peter,
zum Beispiel so,
wobei du die Zeilennummern 10 oder 44 ggf. auch durch 1 ersetzen kannst. Musste mal probieren.
Gruß
Franz


Sub BereicheSortieren()
Dim objWksParameter As Worksheet, objWksSort As Worksheet
Set objWksParameter = Worksheets("SortierParameter")
Set objWksSort = ActiveSheet
With objWksSort.Range(objWksParameter.Range(A1))
.Sort Key1:=.Range(objWksParameter.Range(B1) & "10"), Order1:=xlAscending, Header:=xlYes _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
With objWksSort.Range(objWksParameter.Range(A2))
.Sort Key1:=.Range(objWksParameter.Range(B2) & "44"), Order1:=xlAscending, Header:=xlYes _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
End Sub


AW: Range sortieren - Frage zu Sort Key
Peter

Hallo Franz
Vielen Dank. Ich werde das ausprobieren.
Gruss, Peter