Wenn du in Excel automatisch prüfen willst, ob ein bestimmtes Tabellenblatt existiert – z. B. bevor du Daten kopierst oder Makros ausführst – gibt es elegante Lösungen. In diesem Artikel zeige ich dir zwei Ansätze: über VBA und über Formeln (mit indirekten Bezügen), plus bewährte Tipps und Anwendungsfälle.
1. Der VBA-Ansatz (meine Empfehlung)
Mit VBA lässt sich am sichersten prüfen, ob ein Blatt existiert:
Function BlattExistiert(sheetName As String) As Boolean
On Error Resume Next
BlattExistiert = Not (ThisWorkbook.Worksheets(sheetName) Is Nothing)
On Error GoTo 0
End Function
- Ruf die Funktion z. B. so auf:
If BlattExistiert("Daten2025") Then MsgBox "Das Blatt existiert!" Else MsgBox "Nein, das Blatt fehlt." End If - Vorteil: Diese Methode ist robust, schnell und funktioniert auch in großen Arbeitsmappen.
2. Formeltrick mit INDIREKT und ISTFEHLER
Wenn du ohne VBA arbeiten willst, kannst du indirekte Bezüge nutzen:
=NICHT(ISTFEHLER(INDIREKT("'" & Blattname & "'!A1")))
- Du setzt „Blattname“ als Text oder Referenz auf eine Zelle.
- Wenn das Blatt existiert, liefert die Formel WAHR, andernfalls FALSCH.
⚠️ Nachteil: Bei gebrochenen Bezügen oder geschützten Blättern kann die Formel fehlschlagen bzw. Fehler erzeugen.
3. Wann du welche Variante verwenden solltest
- Wenn du Makros nutzt oder automatisierte Prozesse entwickelst → VBA-Methode
- Wenn du in geteilten Excel-Dateien arbeitest ohne VBA-Rechte → Formeltrick
- Kombiniere beide in fortgeschrittenen Szenarien (z. B. VBA mit Fallback-Formel)
4. Anwendungsbeispiele & Nutzen
- Sicheres Kopieren: Bevor du ein Blatt kopierst, checkst du erstmal, ob Zielblatt schon existiert.
- Dynamische Logs: Wenn ein Reporting-Blatt fehlt, wird es automatisch erstellt.
- Fehlervermeidung: Verhindere Laufzeitfehler in Makros durch Blattchecks.

