Hallo, bin fast am verzweifeln und suche seit Stunden nach einer Lösung:
Möchte aus einer Userform heraus dynamisch in verschiedenen Arbeitsblättern unterschiedliche Dateien sortieren.
Befindet sich die zu sortierende Tabelle im aktuellen Arbeitsblatt, läuft alles problemlos. Ansonsten erhalte aber immer die Meldung:
"Laufzeitfehler’ 1004’
Der Sortierbezug ist ungültig. Überprüfen Sie…
Meine Variablen (Strings) sind:
Arbeitsblatt->„Blatt“,
zu sortierender Bereich-> „tabelle“ z.B. = „A3:J“,
Key->„Spalte“ z.B. = „B1“
Mein Code:
Sheets(Blatt).Range(tabelle & Cells(Rows.Count, 2).End(xlUp).Row).Sort Key1:=Range(Spalte), order1:=xlAscending, Header:=xlNo
Was mache ich falsch? Kann mir jemand helfen?
Sheets(Blatt).Range(tabelle & Cells(Rows.Count,
2).End(xlUp).Row).Sort Key1:=Range(Spalte),
order1:=xlAscending, Header:=xlNo
Was mache ich falsch? Kann mir jemand helfen?
du musst das Sheet erst als aktive Tabellenblatt holen
Sheets(Blatt).Select
Sheets(Blatt).Range(tabelle & Cells(Rows.Count,2).End(xlUp).Row).Sort \_
Key1:=Range(Spalte), \_
order1:=xlAscending, \_
Header:=xlNo
ist halt so, wenn du es so tust 
Befindet sich die zu sortierende Tabelle im aktuellen
Arbeitsblatt, läuft alles problemlos. Ansonsten erhalte aber
immer die Meldung:
"Laufzeitfehler’ 1004’
Der Sortierbezug ist ungültig. Überprüfen Sie…
Sheets(Blatt).Range(tabelle & Cells(Rows.Count,
2).End(xlUp).Row).Sort Key1:=Range(Spalte),
order1:=xlAscending, Header:=xlNo
Hallo Börries,
das zu sortierende Blatt muß nicht aktiviert werden.
Sheets(Blatt).Range(tabelle & Cells(Rows.Count,2).End(xlUp).Row).Sort Key1:=**Sheets(Blatt).**Range(Spalte),…
Gruß
Reinhard
Hallo Reinhard,
herzlichen Dank für die prompte Antwort.
Die Sonne scheint wieder!