Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
680to684
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
680to684
680to684
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Sortieren auf anderem Blatt
13.10.2005 18:15:07
hoha
Hi,
ich hab das selbe problem wie in diesem Beitrag.
Leider verstehe ich nicht die Llösung dieses Problems
könnte mir mal jemand helfen?
thx
hier ist der Artikel:
Hallo Excel-User,
ich versuche mit der Anweisung "Selection.Sort" einen markierten Bereich zu sortieren. Solange sich dieser Bereich auf dem Blatt befindet, dem der Code zugeordnet ist (z.B. Tabelle1), funktioniert es prima.
Liegt der markierte Bereich auf einem anderen Blatt (z.B. Tabelle2), schlugen alle Versuche fehl.
Wie kann ich erreichen, dass ein markierter Bereich in Tabelle2 sortiert wird, obwohl der Code "Selection.Sort" aus Tabelle1 gestartet wird?
Rüdiger

Re: Sortieren auf anderem Blatt
Hallo!
Schreibe den Code in ein allgemeines Modul.
Gruß
F.
Re: Sortieren auf anderem Blatt
Hallo Rüdiger,
soweit ich weiß, musst Du die Tabelle (das Worksheet) vor dem Einsatz der Sort-Funktion aktivieren.
Beispiel:
'Zu sortierende Tabelle aktivieren
Worksheets("DeineTabelle").Activate
'Sortieren
Range("A4:O800").Sort Key1:=Range("B5"), Order1:=xlAscending, Key2:=Range("E5") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom
'Wieder andere Tabelle aktivieren (optional)
Worksheets("AndereTabelle").Activate
Gruß
Vincent
Re: Sortieren auf anderem Blatt
Hallo Frederik,
das habe ich schon mit Erfolg probiert, da dadurch aber andere - für mich unlösbare Probleme - auftreten (z.B. "Private Sub CommandButton2_Click()" wird nicht mehr erkannt u.s.w.).
Gibt es keine direkte Lösung? In etwa "Sheets("Tabelle2").Selection.Sort . . ."?
Wie kann ich den Sortier-Code im allgemeinen Modul starten, wenn der Rest der Ereignisse weiterhin in Tabelle1 verbleibt?
Rüdiger
Re: Sortieren auf anderem Blatt
Hallo
in VBA kann zu 99% auf select, Activatte usw. verzichtet werden
Worksheets("DeineTabelle").Range("A4:O800").Sort .....
Gruß Hajo
Re: Sortieren auf anderem Blatt
Hallo Hajo,
Deine Methode (Worksheets("DeineTabelle").Range("A4:O800").Sort) habe ich auch schon getestet. Sie funktioniert leider nur, wenn "DeineTabelle" sowieso schon aktiv ist.
Grüße
Vincent
Re: Sortieren auf anderem Blatt
Hallo Vincent
ich habe hier nun kein Excel. Dann mit
With Worksheets("DeineTabelle")
.Range("A4:O800").Sort....
End With
Gruß Hajo
Re: Sortieren auf anderem Blatt
Hallo Hajo,
mit "With" leider das selbe Ergebnis (Laufzeitfehler 1004: Der Sortierbezug ist ungültig). With dient ja auch nur dazu, den Quellcode für den Programmierer übersichtlicher zu machen. Die Funktionsweise ist aber die selbe.
Ich habe übrigens auch gleich die Version ohne Activate getestet, da ich das dadurch verursachte kurze Aufflackern des Bildschirms ziemlich hässlich finde.
Grüße
Vincent
Re: Sortieren auf anderem Blatt
Hallo Vincent
es fehlte der zweite Punkt
With Worksheets("DeineTabelle")
.Range("A4:O800")Sort Key1:=.Range("A4")....
End With
Gruß Hajo
Re: Danke
Hallo Georg, hallo Vincent,
vielen Dank für euren Dialog. Die letzte Info mit dem Punkt war entscheident! Darauf wäre ich nicht gekommen.
Nochmal herzlichen Dank
Rüdiger
Re: Danke
Hallo Georg und Hajo,
Danke für den Hinweis mit den Punkten, die hatte ich ganz übersehen.
Grüße
Vincent

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sortieren auf anderem Blatt
13.10.2005 18:44:33
Hajo_Zi
Hallo Vicent,
ich sehe nicht wo Dein Problem ist?
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


AW: Sortieren auf anderem Blatt
14.10.2005 16:59:08
hoha
Hi,
sorry ich solts mal besser formulieren.
ich möchte auf in jeder Arbeitsmappe den Bereich "A2:F10"
sortieren. Ich möchte aber das "Worksheet aktivieren"
nicht verwenden da das bild dann immer flackert.
der codde sieht momentan so aus:
Worksheets("Gruppe A").Range("A2:F10").Sort Key1:=Range("C3"),...
Doch wie dem Artikel bekomme ich den Laufzeitfehler 1004 Der Sortierbezug ist ungültig...
Anzeige
AW: Sortieren auf anderem Blatt
14.10.2005 19:12:43
Hajo_Zi
Hallo Vincent,
siehe Dir mal den Originalcode an da wude mit With und Punkten vor Range gearbeitet.
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3")..
End With
Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"
AW: Sortieren auf anderem Blatt
15.10.2005 14:44:40
hoha
hi hajo
ich habe jetzt einen Synatxfehler kann ihn aber nicht finden.
mein code:

Sub Sotieren()
' Sotieren Makro
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=Range("F3")
, Order2:=xlDescending, Key3:=Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe B")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=Range("F3") _
, Order2:=xlDescending, Key3:=Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=Range("F3") _
, Order2:=xlDescending, Key3:=Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
ActiveWorkbook.Save
End Sub

gruß hoha
Anzeige
AW: Sortieren auf anderem Blatt
15.10.2005 14:48:07
Fred
Hi,

Sub Sotieren()
' Sotieren Makro
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3")
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe B")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3") _
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3") _
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
ActiveWorkbook.Save
End Sub

mfg Fred
Anzeige
AW: Sortieren auf anderem Blatt
15.10.2005 17:00:18
hoha
Hi,
ich bekomme leider immernoch den Syntaxfehler.
hoha
AW: Sortieren auf anderem Blatt
15.10.2005 17:00:40
hoha
Hi,
ich bekomme leider immernoch den Syntaxfehler.
hoha
AW: Sortieren auf anderem Blatt
15.10.2005 17:05:08
hoha
ups
zwei mal
sry
AW: Sortieren auf anderem Blatt
15.10.2005 17:10:46
Fred
Hi,
lad mal ein beispiel hoch.
mfg Fred
AW: Sortieren auf anderem Blatt
16.10.2005 09:07:58
hoha
Hi,
hier ist mal die vereinfachte Datei:
https://www.herber.de/bbs/user/27539.xls
Ist vieleicht ein bisschen grob gestrickt
ich binn noch ein Excel-Anfänger.
Gruß
hoha
AW: Sortieren auf anderem Blatt
16.10.2005 11:35:03
Björn
Hallo ?,
probier's mal mit:

Sub Sotieren()
' Sotieren Makro
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3") _
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe B")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3") _
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
With Worksheets("Gruppe A")
.Range("A2:F10").Sort Key1:=.Range("C3"), Order1:=xlDescending, Key2:=.Range("F3") _
, Order2:=xlDescending, Key3:=.Range("D3"), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom _
, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, DataOption3:= _
xlSortNormal
End With
ActiveWorkbook.Save
End Sub

Gruß
Björn
Anzeige
AW: Sortieren auf anderem Blatt
16.10.2005 16:07:48
hoha
Hi,
Danke leute ihr wart meine Rettung,
es funktioniert endlich.
P.S: kleiner hinweis du hast beim dritten abschnitt "Gruppe A" statt "Doppel" geschrieben.
ISt ja jetzt egal es funktioniert und ich bin glücklich!!!!!!!!!!!!!!!!!!
Uuups,... und danke für die Rückmeldung - o. T.
16.10.2005 18:18:41
Björn

269 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige