Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Sortieren einer Gliederung 1.1, 1.2, 1.10

Sortieren einer Gliederung 1.1, 1.2, 1.10
11.02.2016 09:38:17
Alex
Hallo zusammen,
ich habe auf mehreren Tabellenblätter eine Gliederung mit:
1.1
1.3.3
1.6.1.2
1.10.1
leider sortiert er aber:
1.1
1.10.1
1.3.3
1.6.1.2
Hatte schon mal was gelesen, dass eine Hilfsspalte reicht, in der man einfach einen Buchstaben hinzufügt und diese dann sortiert, aber leider funktioniert das bei mir nicht.
 Sub sor(ws As Worksheet)
Dim rng As Range
For Each rng In ws.Range(ws.Cells(1, 1), ws.Cells(Rows.Count, 1).End(xlUp))
rng.Cells(, 3) = "f" & rng.Cells(, 1)
rng.Cells(, 3).Font.ColorIndex = 1
Columns("A:C").Sort Key1:=Range("C1"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
Next rng
End Sub

Danke für Hilfe/Vorschläge/Code!
Gruß Alex

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sortieren einer Gliederung 1.1, 1.2, 1.10
11.02.2016 10:35:51
EtoPHG
Hallo Alex,
Ist doch klar. Dezimalgliederungen sind Texte! und textlich stimmt die Sortierung!
Ein Trick, das zu sortieren:
Die Spalte der Dezimalgliederung mit Hilfe von Text-in-Spalten (Trennzeichen .) in Hilfspalten aufteilen und anschliessen aufsteigend von links nach rechts, aufsteigend nach den Hilfsspalten inkl. dem restlichen Dateninhalt sortieren.
Gruess Hansueli

Anzeige
AW: Sortieren einer Gliederung 1.1, 1.2, 1.10
11.02.2016 11:27:08
Alex
Hallo Hansueli,
ich glaube habe grob verstanden was du meinst...
Kannst du nochmal genauer sagen/zeigen was du meinst?
Habe anbei mein Exel File mal angehängt.
https://www.herber.de/bbs/user/103454.xlsm
Ein weiteres Problem ist, dass er nur das Arbeitsblatt sortiert und nicht die anderen beiden Arbeitsblätter auch...keine Ahnung wo da der Fehler ist.
LG und Danke,
Alex

Anzeige
AW: Sortieren einer Gliederung 1.1, 1.2, 1.10
11.02.2016 16:22:52
Daniel
Hi
probier mal folgenden Code für das Makro sor.
dann sollte klar werden, was Hansueli gemeint hat.
dein weiteres Problem besteht darin, dass du dem Makro schon genau mitteilen musst, auf welchem Blatt es sortieren soll.
wenn du immer das gleiche Blatt sortierst, dann ist es logisch dass auf den anderen nichts passiert:

Sub sor(ws As Worksheet)
Dim rng As Range
Dim i As Long
Dim tt() As String
For Each rng In ws.Range(ws.Cells(1, 1), ws.Cells(Rows.Count, 1).End(xlUp))
tt = Split(rng.Text, ".")
For i = 0 To UBound(tt)
If IsNumeric(tt(i)) Then tt(i) = Format(tt(i), "00")
Next
rng.Cells(, 3) = "f" & Join(tt, ".")
Next
ws.Columns("A:C").Sort Key1:=ws.Range("C1"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
' ws.Range(ws.Cells(1, 3), ws.Cells(Rows.Count, 3).End(xlUp)).ClearFormats
' ws.Range(ws.Cells(1, 3), ws.Cells(Rows.Count, 3).End(xlUp)).Clear
End Sub
Gruß Daniel

Anzeige
AW: Sortieren einer Gliederung 1.1, 1.2, 1.10
12.02.2016 09:59:13
Alex
Hey Daniel,
perfekt!!! Ist ja ne coole Funktion, die kann ich denke mal öfters gebrauchen :)
LG Alex

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Sortieren von Gliederungen in Excel: 1.1, 1.2, 1.10


Schritt-für-Schritt-Anleitung

Um eine Gliederung wie 1.1, 1.2 oder 1.10 in Excel korrekt zu sortieren, benötigst du eine Hilfsspalte. Hier sind die Schritte:

  1. Daten vorbereiten: Stelle sicher, dass deine Gliederung in einer Spalte steht, z.B. Spalte A.
  2. Hilfsspalte einfügen: Füge eine neue Spalte ein (z.B. Spalte B) neben deiner Gliederung.
  3. Formel einfügen: In der Hilfsspalte fügst du folgende Formel ein, um die Gliederung zu formatieren:
    =TEXT(A1;"00") & "." & TEXT(A2;"00") & "." & TEXT(A3;"00")

    Dies sorgt dafür, dass Excel die Gliederung numerisch sortiert.

  4. Daten sortieren: Markiere die Daten in beiden Spalten und gehe zu Daten > Sortieren. Wähle die Hilfsspalte als Sortierkriterium aus.
  5. Ergebnis überprüfen: Deine Gliederung sollte jetzt korrekt nach den Nummern sortiert sein.

Häufige Fehler und Lösungen

  • Falsche Sortierung: Wenn die Gliederung nicht wie gewünscht sortiert wird, könnte es daran liegen, dass die Werte als Text und nicht als Zahl gespeichert sind. Stelle sicher, dass die Zellen korrekt formatiert sind.

  • Sortierung nur auf einem Blatt: Wenn du mehrere Blätter hast und nur eines sortiert wird, achte darauf, dass das Makro auf alle gewünschten Blätter angewendet wird.


Alternative Methoden

Eine weitere Möglichkeit, die Excel-Nummerierung zu sortieren, ist die Verwendung der Funktion "Text in Spalten":

  1. Markiere die Spalte mit der Gliederung.
  2. Gehe zu Daten > Text in Spalten.
  3. Wähle Getrennt und dann das Trennzeichen . aus.
  4. Sortiere die resultierenden Hilfsspalten numerisch.

Diese Methode hilft, die Dezimalgliederung in separate Spalten aufzuteilen und dann aufsteigend zu sortieren.


Praktische Beispiele

Nehmen wir an, du hast folgende Werte in Spalte A:

1.1
1.3.3
1.6.1.2
1.10.1

Nach der Anwendung der beschriebenen Schritte solltest du die Werte in der Reihenfolge sehen:

1.1
1.3.3
1.6.1.2
1.10.1

Das funktioniert besonders gut mit der Excel 1.1 Version, da diese Funktionen bereits integriert sind.


Tipps für Profis

  • Makros nutzen: Wenn du oft mit solchen Gliederungen arbeitest, erstelle ein Makro, das den Prozess automatisiert. Du kannst den bereitgestellten VBA-Code anpassen, um mehrere Blätter gleichzeitig zu sortieren.

  • Zahlenformatierung: Achte darauf, dass deine Gliederungen korrekt formatiert sind, um Missverständnisse bei der Sortierung zu vermeiden. Verwende die Funktion Format() im VBA-Code, um sicherzustellen, dass die Zahlen immer zweistellig sind.


FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass die Gliederung korrekt formatiert ist?
Überprüfe, ob die Zellen als Text oder Zahl formatiert sind. Verwende die Textfunktion, um sicherzustellen, dass die Gliederung in der gewünschten Form vorliegt.

2. Funktioniert das auch in älteren Excel-Versionen?
Ja, die beschriebenen Schritte und Methoden sind in den meisten Excel-Versionen anwendbar, insbesondere ab Excel 2010. Achte darauf, dass die Funktionalitäten vorhanden sind.

3. Was mache ich, wenn meine Gliederung nicht nach Zahlen sortiert wird?
Stelle sicher, dass die Gliederung als Zahl und nicht als Text formatiert ist. Nutze die Text-in-Spalten-Funktion, um die Werte gegebenenfalls richtig zu formatieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige