In einer Excel Arbeitsmappe können bis zu 255 Tabellenblätter enthalten sein. Ein Inhaltsverzeichnis per Hand zu erstellen wäre auch schon für eine Arbeitsmappe mit nur zehn Tabellenblättern sehr aufwendig und zeitraubend. Stattdessen lässt sich das per Makro im Handumdrehen erledigen.
Das dazu benötigte Makro kopieren Sie zuerst in die Zwischenablage:
Sub MappenInhaltZusammenstellen()
Dim Tabelle As Worksheet
Dim i As Integer
Worksheets.Add.Move before:=Worksheets(1)
ActiveSheet.Name = "Inhalt"
Cells(2, 2).Value = "Enthaltene Blätter"
i = 3
For Each Tabelle In ActiveWorkbook.Worksheets
If Tabelle.Name <> "Inhalt" Then
Cells(i, 2).Value = Tabelle.Name
Tabelle.Hyperlinks.Add Anchor:=Cells(i, 2), _
Address:="", SubAddress:=Tabelle.Name & _
"!A1", ScreenTip:="Hyperlink klicken", _
TextToDisplay:=Tabelle.Name
i = i + 1
End If
Next Tabelle
End Sub
Im nächsten Schritt erzeugen Sie ein VBA Projekt, indem Sie in Excel über die Registerkarte Entwicklertools auf die Schaltfläche Visual Basic klicken.
Im geöffneten VBA Fenster gilt es nun den in der Zwischenablage befindlichen Code nach einem Doppelklick auf DieseArbeitsmappe im Fensterbereich links in das rechts befindliche Dialogfenster einzufügen.
Danach lässt sich das Makro sofort ausführen. Das VBA Fester schließen Sie per Klick auf Schließen ganz oben rechts im VBA Fenster, dies zu speichern ist nicht nötig, da es automatisch in der Excel-Arbeitsmappe geschlossen wird.
Um das Makro auszuführen bewegen Sie sich an den Anfang der Arbeitsmappe, klicken auf die Registerkarte Entwicklertools und dann auf Makros -> MappenInhaltZusammenstellen -> Schaltfläche Ausführen rechts im Fenster.
Das Resultat sieht wie folgt aus:
Das Makro hat ein neues Tabellenblatt eingefügt, in diesem Tabellenblatt sind untereinander alle Tabellenblätter inkl. eines Hyperlinks aufgelistet. Per Klick gelangen Sie zum jeweiligen Tabellenblatt.
Fertig!