Anzeige
Archiv - Navigation
976to980
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
976to980
976to980
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Problem mit Selection.Sort

Problem mit Selection.Sort
15.05.2008 14:45:50
Simon
Hallo,
ich versuche eine Menge Datensätze mittels Sort zu sortieren.
Die manuelle Sortierung über
Userbild
ergibt das gewünschte Ergebnis.
Allerdings mein Code, der mir auch durch den Makrorecorder der Einstellungen
(wenn auch etwas anders formatiert) bestätigt wird, führt zu einem anderen Ergebnis.
Selection.Sort Key1:=Range("D1"), Order1:=xlAscending, _
Key2:=Range("A1"), Order2:=xlDescending, _
Key3:=Range("F1"), Order3:=xlDescending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortTextAsNumbers, DataOption3:=xlSortNormal
Die automatische Sortierung ist leider:
Spalte D, F und anschließend A - was ich mir nicht erklären kann - und was sich auch nicht ändert, wenn ich A und F mit den entsprechenden Parametern tausche.
Wenn ich nun den sortierten Datensatz allerdings nochmals manuell sortieren lasse, dann stimmt die Reihenfolge mit D, A und anschließend F.
Ich hoffe es ist jemandem das Problem bekannt.
Schöne Grüße
Simon

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Selection.Sort
15.05.2008 16:07:00
peteregloff
2 Dinge würde ich noch machen
1. zuerst Range(A1:X10).select - Bereicht selektieren vor dem Sortieren
2. Wenn Du irgendwo eine Leerzeile hast, werden evt. nur die Daten oberhalb oder unterhalb sortiert, je nachdem wo der Cursor gerade steht. (deshalb zuerst Selektieren, dann sollten auch Leerzeilen keine Rolle spielen)
Sonst ist der Code optimal
Gruss Peter

AW: Problem mit Selection.Sort
15.05.2008 16:14:16
Simon
Hi,
ich selectiere einfach vorher alles.
Also Cells.select - es ist sonst nichts in der Tabelle. (Excel Blatt)
Mein Problem ist halt einfach:
das Sortierergebnis von meinem Code stimmt wie gesagt nicht mit dem Ergebnis überein, daß ich über die Auswahl (siehe Screenshot https://www.herber.de/bbs/user/52375.jpg) erreiche.
Und dafür habe ich keine Erklärung.
Schöne Grüße
Simon

Anzeige
Problem weiter ungelöst
16.05.2008 09:57:00
Simon
Gibts sonst irgend ein MS Forum an das ich mich wenden kann, wenn mein Code eigentlich das tun sollte, was ich geschrieben habe, aber es partout (nachweislich) nicht macht?

AW: Problem weiter ungelöst
16.05.2008 14:55:00
Knut
Hi,
ein Bild nützt da nichts, die Datei hochladen.
mfg Knut

AW: Problem weiter ungelöst
18.05.2008 11:31:00
Simon
Hallo,
ich habe nun eine Beispieldatei erstellt, die einen Testdatensatz und das besagte Makro direkt aufgezeichnet enthält. https://www.herber.de/bbs/user/52428.xls
Die Testdaten wurden manuell mit den Einstellungen https://www.herber.de/bbs/user/52375.jpg sortiert - und das Makro dabei aufgezeichnet. Logischer Weise sollte sich die Reihenfolge beim Ausführen des Makros nicht ändern - tut sie aber - und zwar in falscher Sortierung.
Mir ist klar, daß das Makro meine als Datum formatierten Informationen falsch interpretiert - die Frage ist nur, warum tut die manuelle Sortierung das nicht - und warum macht auch ein Makro, welches ich nur 2 Spalten formatieren lasse - als 2tes die Datumsspalte - den Fehler auch nicht.
Wie ich den Fehler umgehe, ist nicht die Frage des Posts - das kriege ich schon gelöst indem ich das Datum umformatiere - nur ist das weder Sinn der Sache, noch sollte es nötig sein - wie meine Gegenbeispiele zeigen.
Schöne Grüße
Simon

Anzeige
Fehler gefunden.
18.05.2008 12:22:22
Simon
Hallo,
ich konnte zwar nicht alle Details des Fehlers klären - u.A. auch nicht, warum das beim Sortieren von nur 2 Spalten funktioniert hat -
aber der generelle Fehler lag ganz wo anders:
Der Fehler war, daß ich erst den Zelleninhalt befüllt - und dann die Zellen als Datum formatiert hatte.
Obwohl mit DateSerial befüllt - scheint es irgendwie in der Speicherung intern einen Unterschied zu machen - so daß der Zelleninhalt - sei er auch als Datumformatiert - und die Formatierung anschließend entsprechend eingestellt, als merkwürdiger String gehandhabt wurde.
Trotzdem hat die manuelle Sortierung den Inhalt korrekt als Datum interpretiert - der Makroablauf allerdings scheinbar nicht - und hat deswegen die Sortierung umgeworfen.
Jedenfalls funktioniert nun beides wie gewünscht.
Vielen Dank für die Mühe und schöne Grüße
Simon
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige