sortieren eines bestimmten Bereichs

Bild

Betrifft: sortieren eines bestimmten Bereichs
von: M
Geschrieben am: 07.07.2015 16:02:52

Hallo Zusammen
Ich möchte in meinem Tabellenblatt "Umstellplan" den Bereich A:I sortieren, falls die Spalte J nicht leer ist, sondern die Zahl "1", "2" oder "3" enthält. Die Zahlen 1-3 geben die Prioritäten an der Textzeile A:I (1= Prio hoch, 3= Prio tief).
Kann mir jemand weiterhelfen.
vielen Dank!
M

Bild

Betrifft: Beispieldatei?
von: Michael
Geschrieben am: 07.07.2015 19:08:03
Hi M,
was willst Du sortieren? Spalten? Zeilen?
Und was soll mit den Zeilen passieren, in denen J leer ist?
Lad bitte mal ne Beispieldatei hoch.
Schöne Grüße,
Michael

Bild

Betrifft: AW: Beispieldatei?
von: M
Geschrieben am: 08.07.2015 07:55:00
Hallo Michael
Ich möchte die ganzen Zeilen sortieren. Wenn J leer ist, passiert mit der Zeile nichts, keine Sortierung. Folgende vereinfachte Bsp. Datei:
https://www.herber.de/bbs/user/98696.xlsx
Besten Dank!

Bild

Betrifft: Beispieldatei, aber
von: Michael
Geschrieben am: 08.07.2015 14:02:40
Hi M,
habe die Beispieldatei angesehen, weiß aber immer noch nicht genau, was Du willst.
Im Moment sieht es so aus, als wären die Daten in nicht zusammenhängende "Blöcke" aufgeteilt, wobei manche Blöcke Werte in Spalte J enthalten, manche nicht: ist das *immer* blockweise so?
*Wenn* das so ist, dann würde ein Rezept etwa so aussehen:
a) durchsuche die Spalte J nach Werten;
b) sobald welche da sind, sehe nach, wieviele es sind
c) sortiere die entsprechenden Zeilen (den "Block")
d) gehe zu a), solange noch Werte in der Spalte J stehen
Wonach sortieren eigentlich? Nach J? Im Beispiel gibt es mehrmals den Wert 1, 2 und 3 nur einmal, also bietet es sich an, noch ein zweites Kriterium zu verwenden, für die Sortierung innerhalb der 1en (so wie Name/Vorname im Telefonbuch): nach welchem?
Am einfachsten ist es, wenn Du alle Daten nach rechts kopierst und in der Kopie so darstellst, wie Du sie haben möchtest: dann können wir uns nämlich endlose Nachfragen sparen - das kostet unnütz Zeit.
Schöne Grüße,
Michael

Bild

Betrifft: AW: Beispieldatei, aber
von: M
Geschrieben am: 08.07.2015 15:47:08
Hallo Michael
Danke für dein Durchhaltewille. Es ist so, die Spalte J enthält jeweils blockweise Werte. Das Vorgehen von a-d ist sinnvoll.
Es soll nach dem Wert J sortiert werden. Wenn mehrmals Wert 1 vorkommt, werden diese Zeilen einfach nacheinander aufgelistet, es braucht kein weiteres Kriterien.
Gruss, Marianne
https://www.herber.de/bbs/user/98718.xlsx

Bild

Betrifft: so in etwa
von: Michael
Geschrieben am: 10.07.2015 17:47:42
Hi Marianne,
ich hab das mal umgesetzt:

Sub sortieren()
Dim i&, j&, oben&, unten&
unten = Range("J" & Rows.Count).End(xlUp).Row
While unten > 1
  oben = Range("J" & unten).End(xlUp).Row
  If unten - oben > 1 Then Range("A" & oben & ":J" & unten).Sort _
     key1:=Range("J" & oben)  ' , key2:=Range("B" & oben)
  unten = Range("J" & oben).End(xlUp).Row
Wend
End Sub
Der key2 ist auskommentiert, weil er zwar "richtig" ist (die Daten sind nämlich nach Spalte B sortiert!), aber trotzdem nicht funktioniert: Maschine 12 (und 13) wird vor Maschine 8 einsortiert, weil 1 kleiner als 8 ist - das läßt sich durch eine vorangestellte 0, also "08" vermeiden, ganz grundsätzlich, *falls* Du das Kommentarzeichen (') entfernen möchtest.
Die Datei: https://www.herber.de/bbs/user/98760.xlsm
Happy Exceling,
Michael

Bild

Betrifft: Perfekt, hat geklappt
von: M
Geschrieben am: 14.07.2015 12:48:47
Hallo Michael
Perfekt, vielen Dank! Es hat funktioniert
schöne Grüsse,
M.

 Bild

Beiträge aus den Excel-Beispielen zum Thema "sortieren eines bestimmten Bereichs"