| home |  
  

   © 2005 by Friedel Schmidt •  E-Mail  •                      Top  

   | impressum | feedback | home |  


Inhaltsverzeichnis

Suchen

Links
  

Tabellenblätter in alphabetischer Reihenfolge sortieren
Versionen: Excel 97, 2000 und 2002

Mit folgendem kleinen Makro kann man die in einer Arbeitsmappe vorhandenen Tabellenblätter alphabetisch sortieren:

Public Sub TabellenSortieren()
Dim iCount As Integer, iErstes As Integer, iZweites As Integer
   iCount = ActiveWorkbook.Worksheets.Count
   For iErstes = 1 To iCount
      For iZweites = iErstes To iCount
         If Worksheets(iZweites).Name < Worksheets(iErstes).Name Then
            Worksheets(iZweites).Move before:=Worksheets(iErstes)
          End If
      Next iZweites
   Next iErstes
End Sub

Etwas heimtückisch daran ist die Groß- und Kleinschreibung in VBA.
TAbelle2 wird vor Tabelle1 einsortiert! Will man das abschalten, muß man folgende Zeile am Anfang des Moduls einfügen:

Option Compare Text

Soll ein vorhandenes Inhaltsverzeichnis am Anfang stehen, dann die Zeile

Worksheets("Inhalt").Move before:=Worksheets(1)

(den Blattnamen auf die eigenen Bedürfnisse anpassen) am Ende des Makros einfügen, so daß das Makro wie folgt aussieht:

Option Compare Text
Public Sub TabellenSortieren()
Dim iCount As Integer, iErstes As Integer, iZweites As Integer
   iCount = ActiveWorkbook.Worksheets.Count
   For iErstes = 1 To iCount
      For iZweites = iErstes To iCount
         If Worksheets(iZweites).Name < Worksheets(iErstes).Name Then
            Worksheets(iZweites).Move before:=Worksheets(iErstes)
          End If
      Next iZweites
   Next iErstes
Worksheets("Inhalt").Move before:=Worksheets(1)
End Sub


Erläuterungen:
Mit "Option Compare Text" am Anfang des Moduls wird der Textvergleich unabhängig von der Groß- Kleinschreibung eingestellt.
Die Prozedur durchläuft nacheinander die Tabellenblätter, vergleicht den Blattnamen mit dem Namen der jeweils an erster Stelle stehenden Tabelle und stellt das Blatt mit dem "kleineren" Namen gegebenenfalls an den Anfang der Arbeitsmappe.
Zum Schluß wird das Inhaltsverzeichnis
an den Anfang gestellt.



Tabellenblätter in beliebiger Reihenfolge sortieren
Inhaltsverzeichnis für Arbeitsmappen anlegen