gibt es eine Möglichkeit, mir die verschiedenen Tabellenblattnamen in einer Auswahlliste auf einem Tabellenblatt anzuzeigen?
Und wenn ja, wie?
LG
Sascha
Sub Tabellennamen_auflisten()
Dim MyListe$, MyCell$, Anzahl%, MyRange$, Ok%, i%
MyListe = ActiveSheet.Name
MyCell = ActiveCell.Address
Anzahl = Worksheets.Count
MyRange = Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.Row + Anzahl - 1, _
ActiveCell.Column)).Address
Worksheets(MyListe).Range(MyRange).Select
Ok = MsgBox("ACHTUNG: Der markierte Bereich wird überschrieben !" & vbCrLf & _
Chr(13) & " Trotzdem fortfahren ?", vbYesNo)
If Ok vbYes Then Exit Sub
For i = 1 To Worksheets.Count
Sheets(MyListe).Cells(Range(MyCell).Row + i - 1, Range(MyCell).Column) = Sheets(i).Name
Next i
Range(MyCell).Select
MsgBox ("Es befinden sich ") & ThisWorkbook.Worksheets.Count & (" Tabellenblätter in dieser _
Arbeitsmappe."), vbOKOnly, ThisWorkbook.Name
End Sub
Sub Tabellennamen_auflisten()
Dim MyListe$, MyCell$, Anzahl%, MyRange$, Ok%, i%
MyListe = ActiveSheet.Name
MyCell = ActiveCell.Address
Anzahl = Worksheets.Count
MyRange = Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.Row + Anzahl - 1, _
_
ActiveCell.Column)).Address
Worksheets(MyListe).Range(MyRange).Select
Ok = MsgBox("ACHTUNG: Der markierte Bereich wird überschrieben !" & vbCrLf & _
Chr(13) & " Trotzdem fortfahren ?", vbYesNo)
If Ok vbYes Then Exit Sub
For i = 1 To Worksheets.Count
Sheets(MyListe).Cells(Range(MyCell).Row + i - 1, Range(MyCell).Column) = Sheets(i).Name
Next i
Range(MyCell).Select
MsgBox ("Es befinden sich ") & ThisWorkbook.Worksheets.Count & _
(" Tabellenblätter in dieser Arbeitsmappe."), vbOKOnly, ThisWorkbook.Name
End Sub
Um eine Auswahlliste in Excel zu erstellen, die die Namen der Tabellenblätter enthält, kannst Du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
Kopiere den folgenden Code und füge ihn in das Modul ein:
Sub Tabellennamen_auflisten()
Dim MyListe$, MyCell$, Anzahl%, MyRange$, Ok%, i%
MyListe = ActiveSheet.Name
MyCell = ActiveCell.Address
Anzahl = Worksheets.Count
MyRange = Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.Row + Anzahl - 1, ActiveCell.Column)).Address
Worksheets(MyListe).Range(MyRange).Select
Ok = MsgBox("ACHTUNG: Der markierte Bereich wird überschrieben !" & vbCrLf & "Trotzdem fortfahren ?", vbYesNo)
If Ok <> vbYes Then Exit Sub
For i = 1 To Worksheets.Count
Sheets(MyListe).Cells(Range(MyCell).Row + i - 1, Range(MyCell).Column) = Sheets(i).Name
Next i
Range(MyCell).Select
MsgBox ("Es befinden sich ") & ThisWorkbook.Worksheets.Count & (" Tabellenblätter in dieser Arbeitsmappe."), vbOKOnly, ThisWorkbook.Name
End Sub
Schließe den VBA-Editor und kehre zu Excel zurück.
Platziere den Cursor in der Zelle, wo die Auswahlliste beginnen soll.
Drücke ALT + F8, wähle Tabellennamen_auflisten und klicke auf Ausführen.
Jetzt hast Du eine Excel Dropdown-Liste, die die Namen aller Tabellenblätter enthält.
Falls Du keine VBA verwenden möchtest, kannst Du auch eine Hilfstabelle erstellen:
Erstelle eine neue Tabelle und verwende die folgende Formel in einer Zelle, um den Tabellennamen zu ermitteln:
=TEIL(ZELLE("Dateiname";Tabelle1!A1);SUCHEN("]";ZELLE("Dateiname";Tabelle1!A1))+1;999)
Ersetze Tabelle1 durch den Namen des jeweiligen Tabellenblatts.
Erstelle eine Excel Auswahlliste mit dem Namen Blätter, indem Du im Menü Daten -> Gültigkeit auswählst und die Liste definiertest.
Nehmen wir an, Du hast drei Tabellenblätter: "Januar", "Februar", "März". Nach dem Ausführen des VBA-Makros oder der Verwendung der Hilfstabelle wird die Auswahlliste Excel die folgenden Optionen anzeigen:
Du kannst diese Liste dann in einem Drop Down Excel-Format verwenden, um schnell zwischen den Tabellenblättern zu navigieren.
1. Wie kann ich die Liste der Tabellenblätter aktualisieren?
Führe einfach das Makro erneut aus, um die Auswahlliste zu aktualisieren.
2. Funktioniert das Makro auch in älteren Excel-Versionen?
Ja, das Makro sollte in den meisten Excel-Versionen ab 2007 funktionieren.
3. Kann ich die Dropdown-Liste auf ein anderes Tabellenblatt verschieben?
Ja, Du kannst die Dropdown-Liste auf ein anderes Blatt kopieren und das Makro dort ausführen.