Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
328to332
328to332
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

sortierung von tabellenblättern

sortierung von tabellenblättern
29.10.2003 22:42:53
dietmar
hallo community,

kann man die tabellenblätter einer arbeitsmappe sortieren?

bsp.:
UE 12
UE 23
UE 14
UP 11
QS 15
UP 15

soll werden zu:
QS 15
UE 12
UE 14
UE 23
UP 11
UP 15

so sollen die tabellen im arbeitsmappenregister gelistet sein, neue tabellenblätter sollen automatisch einsortiert werden.

danke, dietmar

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: sortierung von tabellenblättern
29.10.2003 22:51:01
xXx
Hallo,
das ist Bestandteil meiner kleinen Helferlein (siehe Stöberkiste)
Nicht elegant, aber funktioniert!

Sub Blaetter_sortieren_Name()
Dim iBlatt1 As Integer, iBlatt2 As Integer, iAnzBlaetter As Integer, _
oBlatt1 As Object, oBlatt2 As Object, nBlatt1, nBlatt2
Application.ScreenUpdating = False
iAnzBlaetter = ActiveWorkbook.Sheets.Count
iBlatt1 = 1
100:
iBlatt2 = iBlatt1 + 1
200:
Set oBlatt1 = Sheets(iBlatt1)
Set oBlatt2 = Sheets(iBlatt2)
nBlatt1 = oBlatt1.Name
nBlatt2 = oBlatt2.Name
If nBlatt1 > nBlatt2 Then
oBlatt2.Move before:=oBlatt1
If iBlatt2 <= AnzBlaetter - 1 Then
iBlatt2 = iBlatt2 + 1
GoTo 200
Else
GoTo 100
End If
End If
If iBlatt2 < iAnzBlaetter Then
iBlatt2 = iBlatt2 + 1
GoTo 200
Else
If iBlatt1 = iAnzBlaetter - 1 Then GoTo 1000
iBlatt1 = iBlatt1 + 1
GoTo 100
End If
1000:
Sheets(1).Activate
Application.ScreenUpdating = True
End Sub

Gruß aus'm Pott
Udo
http://www.excelerator.de

P.S.Das Forum lebt auch von den Rückmeldungen der Frager an die Antworter.
Anzeige
Aus diesem Forum
29.10.2003 22:59:11
Werner
Hallo Dietmar,

Kürzer so.
War vor kurzem hier im Forum.


Sub SheetsAlphaSort()
Dim i As Integer, j As Integer, k As Integer
k = ActiveWorkbook.Worksheets.Count
For i = 1 To k
For j = i To k
If Worksheets(j).Name < Worksheets(i).Name Then
Worksheets(j).Move Before:=Worksheets(i)
End If
Next j
Next i
End Sub


Gruss Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige