Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sortierung Tabellenblätter ab bestimmtem Zeichen

Forumthread: Sortierung Tabellenblätter ab bestimmtem Zeichen

Sortierung Tabellenblätter ab bestimmtem Zeichen
27.06.2005 17:57:31
lasmik
hallo
in meiner arbeitsmappe befinden sich mehrere tabellenblätter, wo auch immer wieder welche dazu kommen. diese werden durch folg. macro sortiert:

Sub SortWorksheets()
Dim Cnt As Integer
Dim N As Integer
Dim M As Integer
On Error GoTo EndOfMacro
Application.ScreenUpdating = False
Cnt = ActiveWorkbook.Worksheets.Count
For M = 3 To Cnt
For N = M To Cnt
If UCase(Worksheets(N).Name) < UCase(Worksheets(M).Name) Then
Worksheets(N).Move before:=Worksheets(M)
End If
Next N
Next M
EndOfMacro:
Application.ScreenUpdating = True
End Sub

die tabellen heißen z. bsp. hr. aaa, hr. ccc, fr. xxx, fr. zzz
nach der sortierung mit o. g. macro sieht es so aus:
fr. xxx, fr. zzz, hr. aaa, hr. ccc
wie kann ich es anstellen das die sortierung nach dem eigentlichen namen ( also hr. aaa, hr. ccc, fr. xxx, fr. zzz ) erfolgt? oder sortierung ab 4. zeichen?
dies sollte möglichst mit über o. g. macro laufen.
vielen dank schon mal
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Sortierung Tabellenblätter ab bestimmtem Zeichen
27.06.2005 19:38:55
Christoph
Hallo Lasmik
ich bin mir nicht sicher, ob es in 97 schon "Right" gibt, probier mal:
diese Zeile:
If UCase(Worksheets(N).Name) &lt UCase(Worksheets(M).Name) Then
ersetzen durch:
If UCase(Right(Worksheets(N).Name, 4)) &lt UCase(Right(Worksheets(M).Name, 4)) Then
Gruß
Christoph
Anzeige
AW: Sortierung Tabellenblätter ab bestimmtem Zeich
27.06.2005 19:49:41
lasmik
kommt leider: fehler beim kompilieren, syntaxfehler
right gibts so wie ich das sehe noch nicht. ist das identisch von der funktion her mit "rechts"?
danke
AW: Sortierung Tabellenblätter ab bestimmtem Zeich
27.06.2005 20:21:07
Christoph
Hallo Lasmik,
Right gibt dir den rechten eines Strings und ist somit von der Syntax gleich wie die Funktion.
Da ich selbst kein 97 habe, kann ich das nicht testen...
aber probier mal:
Option Explicit
Sub SortWorksheets_II()
Dim Cnt As Integer
Dim N As Integer
Dim M As Integer
Dim strN$, strM$
On Error GoTo EndOfMacro
Application.ScreenUpdating = False
Cnt = ActiveWorkbook.Worksheets.Count
For M = 1 To Cnt
For N = M To Cnt
strN = UCase(Mid(Worksheets(N).Name, Len(Worksheets(N).Name) - 3, 4))
strM = UCase(Mid(Worksheets(M).Name, Len(Worksheets(M).Name) - 3, 4))
If strN < strM Then Worksheets(N).Move before:=Worksheets(M)
Next N
Next M
EndOfMacro:
Application.ScreenUpdating = True
End Sub
Gruß
Christoph

Anzeige
AW: Sortierung Tabellenblätter ab bestimmtem Zeich
27.06.2005 21:29:57
lasmik
leider bringt das noch nicht den erwünschten erfolg. es wird zwar was sortiert aber ich weis nicht und erkenn nicht nach was. habe schon versch. zahlen in der "mid" funktion probiert. finde aber nicht die richtige raus. macro läuft aber ohne fehler durch.
ergebniss jetzt:
fr. ertl hr. jilg hr. biller
soll:
hr. biller fr. ertl hr. jilg
( sortiert nach: b, e und j )
hast noch ne idee?
danke
Anzeige
AW: Sortierung Tabellenblätter ab bestimmtem Zeich
27.06.2005 21:49:05
Christoph
Hallo Lasmik,
wer lesen kann im klar im Vorteil... du hattest geschrieben "sortierung ab 4. zeichen". Das Makro sortiert aber nach den letzten 4 Zeichen.
Also, mein Fehler ...
Tausche die Zeilen:
strN = UCase(Mid(Worksheets(N).Name, Len(Worksheets(N).Name) - 3, 4))
strM = UCase(Mid(Worksheets(M).Name, Len(Worksheets(M).Name) - 3, 4))
durch
strN = UCase(Mid(Worksheets(N).Name, 4, Len(Worksheets(N).Name) - 3))
strM = UCase(Mid(Worksheets(M).Name, 4, Len(Worksheets(M).Name) - 3))
sorry
Gruß
Christoph
Anzeige
Tausend "richtig sortierten" Dank
27.06.2005 22:09:53
lasmik
vielen dank für die lösung.
alles so wie ich es möchte.
mfg lasmik
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige